From f20ba863cc96f04a19f16aa54c17b3967f2c981b Mon Sep 17 00:00:00 2001 From: Marius Poke Date: Tue, 9 Aug 2022 12:14:44 +0200 Subject: [PATCH] ICS28: Cross-Chain Validation V1 (#666) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ICS 28 CCV draft w/ init and validator set update (#640) * Create README.md * Add files with CCV spec * fix links to ICS 4 * fix links to ICS 7 * add ICS 28 to main README.md * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * minor, remove confusing phrasing * child -> consumer; parent -> provider * clarify which staking module * extend staking assumptions, remove redundant inv, prove staking props and sys inv * break long lines * break long lines * remove dependecies to Cosmos SDK * changes in the security model * specify multiple consumer chains * channel init overview * split Valid Blockchain assumption * minor changes after discussion w/ Josef * make the split of Valid Blockchain consistent * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * resolve conversations Co-authored-by: Sergio Mena Co-authored-by: Aditya * merge CODEOWNERS from master * ICS28: CCV draft w/ complete unbonding (#646) * Create README.md * Add files with CCV spec * fix links to ICS 4 * fix links to ICS 7 * add ICS 28 to main README.md * adding tech spec for unbonding delegations * add context on unbonding operations * add unbonding operation diagram * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * minor, remove confusing phrasing * child -> consumer; parent -> provider * clarify which staking module * extend staking assumptions, remove redundant inv, prove staking props and sys inv * modify staking hooks spec to cover other unbonding ops * provider Staking module * break long lines * break long lines * remove dependecies to Cosmos SDK * changes in the security model * specify multiple consumer chains * channel init overview * address issues #27 and #33 from cosmos/interchain-security repo * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> Co-authored-by: Sergio Mena Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * ICS28: Extend consumer InitGenesis (#659) * Create README.md * Add files with CCV spec * fix links to ICS 4 * fix links to ICS 7 * add ICS 28 to main README.md * adding tech spec for unbonding delegations * add context on unbonding operations * add unbonding operation diagram * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * minor, remove confusing phrasing * child -> consumer; parent -> provider * clarify which staking module * extend staking assumptions, remove redundant inv, prove staking props and sys inv * modify staking hooks spec to cover other unbonding ops * provider Staking module * break long lines * break long lines * remove dependecies to Cosmos SDK * changes in the security model * specify multiple consumer chains * channel init overview * address issues #27 and #33 from cosmos/interchain-security repo * extend consumer InitGenesis * describe mechanism to disseminate genesis state * remove ExportGenesis and restarted chains * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * validate channel IDs on provider genesis Co-authored-by: Sergio Mena Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * ICS28: Consumer Initiated Slashing (aka Evidence) (#663) * Create README.md * Add files with CCV spec * fix links to ICS 4 * fix links to ICS 7 * add ICS 28 to main README.md * adding tech spec for unbonding delegations * add context on unbonding operations * add unbonding operation diagram * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * minor, remove confusing phrasing * child -> consumer; parent -> provider * clarify which staking module * extend staking assumptions, remove redundant inv, prove staking props and sys inv * modify staking hooks spec to cover other unbonding ops * provider Staking module * break long lines * break long lines * remove dependecies to Cosmos SDK * changes in the security model * specify multiple consumer chains * channel init overview * address issues #27 and #33 from cosmos/interchain-security repo * extend consumer InitGenesis * describe mechanism to disseminate genesis state * describe mapping heights provider <> consumer * remove ExportGenesis and restarted chains * add overview of consumer initiated slashing * add slashing invariant * add assumptions needed by evidence * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * draft CCV props for slashing * replace time w/ height; add HtoVSC and VSCtoH * replace time with height in invariants and properties * validate channel IDs on provider genesis * prove Slashing Invariant * enable mapping from consumer to provider heights * technical spec for slashing * minor changes * fix links to tendermint spec * clarify Staking vs Slashing modules * replace VSC acks w/ VSCMaturedPackets * fix some TODOs * fix properties * HtoVSC and VSCtoH from () to [] * fix infraction height and add intuition diagram * keep ValidatorSet in consumer CCV module state * add outstanding downtime flag and decouple from validatorSet * fix issues pointed by Simon * dealing with downtime slashing atomicity * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Aditya * addressing Aditya's comments * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * addressing Josef's comments * link TODOs with issues * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * apply suggestions from code review * cleanup outdated note on restarted consumer chains Co-authored-by: Sergio Mena Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> Co-authored-by: Aditya * ICS28: Remove CCV channel state (#678) * Create README.md * Add files with CCV spec * fix links to ICS 4 * fix links to ICS 7 * add ICS 28 to main README.md * adding tech spec for unbonding delegations * add context on unbonding operations * add unbonding operation diagram * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * Update spec/app/ics-028-cross-chain-validation/README.md Co-authored-by: Sergio Mena * minor, remove confusing phrasing * child -> consumer; parent -> provider * clarify which staking module * extend staking assumptions, remove redundant inv, prove staking props and sys inv * modify staking hooks spec to cover other unbonding ops * provider Staking module * break long lines * break long lines * remove dependecies to Cosmos SDK * changes in the security model * specify multiple consumer chains * channel init overview * address issues #27 and #33 from cosmos/interchain-security repo * extend consumer InitGenesis * describe mechanism to disseminate genesis state * describe mapping heights provider <> consumer * remove ExportGenesis and restarted chains * add overview of consumer initiated slashing * add slashing invariant * add assumptions needed by evidence * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * draft CCV props for slashing * replace time w/ height; add HtoVSC and VSCtoH * replace time with height in invariants and properties * validate channel IDs on provider genesis * prove Slashing Invariant * enable mapping from consumer to provider heights * technical spec for slashing * minor changes * fix links to tendermint spec * clarify Staking vs Slashing modules * replace VSC acks w/ VSCMaturedPackets * fix some TODOs * fix properties * HtoVSC and VSCtoH from () to [] * fix infraction height and add intuition diagram * keep ValidatorSet in consumer CCV module state * remove CCV channel status * add outstanding downtime flag and decouple from validatorSet * adressing Josef's comment * fix issues pointed by Simon * dealing with downtime slashing atomicity * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Aditya * addressing Aditya's comments * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/technical_specification.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * addressing Josef's comments * link TODOs with issues * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Aditya * apply suggestions from code review * cleanup outdated note on restarted consumer chains Co-authored-by: Sergio Mena Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> Co-authored-by: Aditya * Update technical_specification.md Fix typo: VSCtoH replaced with HtoVSC in SendSlashRequest * ICS28: Replace "Initiator" w/ "Caller" and “Trigger Event” (#696) * update init methods and ics26 methods * updating ValSet Update methods * updating Consumer Initiated Slashing methods * ICS28: Handle pending proposals to spawn consumer chains (#697) * handle pending proposals * ICS28: Remove genesisHash from specification (#699) * remove genesis hash * remove details of genesis state dissemination * ICS28: CCV Reward Distribution subprotocol (#704) * add overview of reward distribution * add CCVHandshakeMetadata and update channel handshake methods signatures * initiate opening handshake for transfer channel * add DistributeRewards() method * address review comments * add distribution invariant * replace system invariants with system properties Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * ICS28: Set initH in onChanOpenConfirm (#705) * set initH in onChanOpenConfirm * replace initH with initialHeights * ICS28: Enable the removal of a consumer chain from the provider (#707) * stopping a consumer chain * deal with timeouts on the consumer side * fix typo * add note on how to shut down the consumer * add note on safety implication of lockUnbondingOnTimeout * ICS28: Remove BeforeUnbondingOpCompleted (#711) * remove BeforeUnbondingOpCompleted hook * cleanup method names * ICS28: Update SlashPacketData (#728) * update SlashPacket * ICS28: Remove dependency on Tendermint and ABCI (#730) * remove mention of V2 * remove ABCI dependency from overview; also small fixes * remove dependencies from system model and README * remove dependencies from tech spec * call UnbondMaturePackets() earlier (#747) * fix edge case enabled by aggregation (#746) * Use `h < hp'` instead of `h <= hp'` in Bond-Based Consumer Voting Power (#749) * replace slashRequests w/ downtimeSlashRequests (#745) * ics28 update sendPacket (#756) * ICS28: Restructure technical spec (#760) * split technical spec into two files * restructure methods and subprotocols * add links to readme.md * fix typo - initH replaced w/ initialHeights * ICS28: Unbonding ops are put on hold even w/o consumer chains (#763) * PutUnbondingOnHold only if consumer chains exist * Use currentTimestamp() >= p.stopTime in StopConsumerChainProposalHandler (#769) Tackle https://github.com/cosmos/ibc/issues/768 * adding consumerUnbondingPeriod (#771) * fix sendFungibleTokens signature * add authors * ICS28: Removing the only consumer chain (#770) * remove unbonding op with no consumer chains * add postcondition * add conditions for CreateConsumerClient and StopConsumerChain (#775) * update created date * ICS28: Account for slashing in Bond-Based Consumer Voting Power property (#793) * extend Bond-Based Consumer Voting Power w/ slashing * fix Bond-Based Consumer Voting Power formula * expand note for clarity * add pUnbonding * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * clarify mathematical writeup of property * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * Update spec/app/ics-028-cross-chain-validation/system_model_and_properties.md Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * make changes to sumUnbonding / sumSlash consistent * add history Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> Co-authored-by: Sergio Mena Co-authored-by: Aditya Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> Co-authored-by: Daniel T <30197399+danwt@users.noreply.github.com> --- .github/CODEOWNERS | 2 +- README.md | 1 + .../ics-028-cross-chain-validation/README.md | 60 + .../data_structures.md | 295 ++ .../ccv-distribution-overview.excalidraw | 1448 ++++++ .../figures/ccv-distribution-overview.png | Bin 0 -> 314861 bytes .../figures/ccv-evidence-overview.excalidraw | 1325 +++++ .../figures/ccv-evidence-overview.png | Bin 0 -> 486533 bytes .../ccv-height-mapping-overview.excalidraw | 1661 +++++++ .../figures/ccv-height-mapping-overview.png | Bin 0 -> 705335 bytes .../figures/ccv-init-overview.excalidraw | 2517 ++++++++++ .../figures/ccv-init-overview.png | Bin 0 -> 893535 bytes .../figures/ccv-mapping-intuition.excalidraw | 1228 +++++ .../figures/ccv-mapping-intuition.png | Bin 0 -> 81422 bytes .../figures/ccv-unbonding-overview.excalidraw | 4367 +++++++++++++++++ .../figures/ccv-unbonding-overview.png | Bin 0 -> 1882490 bytes .../figures/ccv-vsc-overview.excalidraw | 946 ++++ .../figures/ccv-vsc-overview.png | Bin 0 -> 340065 bytes .../ics-028-cross-chain-validation/methods.md | 1975 ++++++++ .../overview_and_basic_concepts.md | 310 ++ .../system_model_and_properties.md | 400 ++ .../technical_specification.md | 120 + 22 files changed, 16654 insertions(+), 1 deletion(-) create mode 100644 spec/app/ics-028-cross-chain-validation/README.md create mode 100644 spec/app/ics-028-cross-chain-validation/data_structures.md create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-evidence-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-evidence-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-height-mapping-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-height-mapping-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-init-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-init-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-mapping-intuition.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-mapping-intuition.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-unbonding-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-unbonding-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-vsc-overview.excalidraw create mode 100644 spec/app/ics-028-cross-chain-validation/figures/ccv-vsc-overview.png create mode 100644 spec/app/ics-028-cross-chain-validation/methods.md create mode 100644 spec/app/ics-028-cross-chain-validation/overview_and_basic_concepts.md create mode 100644 spec/app/ics-028-cross-chain-validation/system_model_and_properties.md create mode 100644 spec/app/ics-028-cross-chain-validation/technical_specification.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 505d8a914..299f24a08 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,4 +1,4 @@ # Default owners for repository # 2/n quorum required for merge -* @mpoke @adityasripal @cwgoes @colin-axner +* @mpoke @adityasripal @cwgoes @colin-axner \ No newline at end of file diff --git a/README.md b/README.md index 47a261c70..1ee55529f 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ All standards at or past the "Draft" stage are listed here in order of their ICS | -------------------------------------------------------- | ----------------------- | ----- | --------------- | | [20](spec/app/ics-020-fungible-token-transfer/README.md) | Fungible Token Transfer | Candidate | [ibc-go](https://github.com/cosmos/ibc-go/tree/main/modules/apps/transfer) | | [27](spec/app/ics-027-interchain-accounts/README.md) | Interchain Accounts | Candidate | [ibc-go](https://github.com/cosmos/ibc-go/tree/main/modules/apps/27-interchain-accounts) | +| [28](spec/app/ics-028-cross-chain-validation/README.md) | Cross-Chain Validation | Draft | | | [29](spec/app/ics-029-fee-payment) | General Relayer Incentivisation Mechanism | Candidate | [ibc-go](https://github.com/cosmos/ibc-go/tree/main/modules/apps/29-fee) | | [30](spec/app/ics-030-middleware) | IBC Application Middleware | N/A | N/A | | [721](spec/app/ics-721-nft-transfer) | Non-Fungible Token Transfer | Candidate | [bianjieai](https://github.com/bianjieai/ibc-go/tree/ics-721-nft-transfer) | diff --git a/spec/app/ics-028-cross-chain-validation/README.md b/spec/app/ics-028-cross-chain-validation/README.md new file mode 100644 index 000000000..41830b5f0 --- /dev/null +++ b/spec/app/ics-028-cross-chain-validation/README.md @@ -0,0 +1,60 @@ +--- +ics: 28 +title: Cross-Chain Validation +stage: draft +category: IBC/APP +requires: 25, 26, 20 +author: Marius Poke , Aditya Sripal , Jovan Komatovic , Cezara Dragoi , Josef Widder +created: 2022-06-27 +modified: 2022-08-03 +--- + + +# Synopsis + +This standard document specifies packet data structure, state machine handling logic, and encoding details for Cross-Chain Validation (CCV). CCV is the specific IBC level protocol that enables *Interchain Security*, a Cosmos-specific category of *Shared Security*. + +At a high level, CCV enables a *provider chain* (e.g., the Cosmos Hub) to provide *security* to multiple *consumer chains*. This means that the validator sets on the consumer chains are chosen from the validator set of the provider chain (for more details, see the [Security Model](./overview_and_basic_concepts.md#security-model) section). + +The communication between the provider and the consumer chains is done through the IBC protocol over a *unique*, *ordered* channel (one for each consumer chain). + +> Throughout this document, we will use the terms chain and blockchain interchangeably. + +## Contents +- [Overview and Basic Concepts](./overview_and_basic_concepts.md) +- [System Model and Properties](./system_model_and_properties.md) +- [Technical Specification: Data Structures and Methods](./technical_specification.md) + - [Data Structures](./data_structures.md) + - [Methods](./methods.md) + + + +## Example Implementation + +Interchain Security [Go implementation](https://github.com/cosmos/interchain-security). + + + + +## History + +Jun 27, 2022 - Draft written + +Aug 3, 2022 - Revision of *Bond-Based Consumer Voting Power* property + +## Copyright + +All content herein is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). diff --git a/spec/app/ics-028-cross-chain-validation/data_structures.md b/spec/app/ics-028-cross-chain-validation/data_structures.md new file mode 100644 index 000000000..5c724be5e --- /dev/null +++ b/spec/app/ics-028-cross-chain-validation/data_structures.md @@ -0,0 +1,295 @@ + +# CCV: Technical Specification - Data Structures +[↑ Back to main document](./README.md) + +[↑ Back to technical specification](./technical_specification.md) + + +## Outline +- [External Data Structures](#external-data-structures) +- [CCV Data Structures](#ccv-data-structures) +- [CCV Packets](#ccv-packets) +- [CCV State](#ccv-state) + - [State on Provider Chain](#state-on-provider-chain) + - [State on Consumer Chain](#state-on-consumer-chain) + +## External Data Structures +[↑ Back to Outline](#outline) + +This section describes external data structures used by the CCV module. + +The CCV module uses the ABCI `ValidatorUpdate` data structure, which consists of a validator and its power (for more details, take a look at the [ABCI specification](https://github.com/tendermint/spec/blob/v0.7.1/spec/abci/abci.md#data-types)), i.e., +```typescript +interface ValidatorUpdate { + pubKey: PublicKey + power: int64 +} +``` +The provider chain sends to the consumer chain a list of `ValidatorUpdate`s, containing an entry for every validator that had its power updated. + +The data structures required for creating clients (i.e., `ClientState`, `ConsensusState`) are defined in [ICS 2](../../core/ics-002-client-semantics). +In the context of CCV, every chain is uniquely defined by their chain ID and the validator set. +Thus, CCV requires the `ClientState` to contain the chain ID and the `ConsensusState` for a particular height to contain the validator set at that height. +In addition, the `ClientState` should contain the `UnbondingPeriod`. +For an example, take a look at the `ClientState` and `ConsensusState` defined in [ICS 7](../../client/ics-007-tendermint-client). + +## CCV Data Structures +[↑ Back to Outline](#outline) + +The CCV module is initialized through the `InitGenesis` method when the chain is first started. The initialization is done from a genesis state. This is the case for both provider and consumer chains: +- On the provider chain, the genesis state is described by the following interface: + ```typescript + interface ProviderGenesisState { + // a list of existing consumer chains + consumerStates: [ConsumerState] + } + ``` + with `ConsumerState` defined as + ```typescript + interface ConsumerState { + chainId: string + channelId: Identifier + } + ``` +- On the consumer chain, the genesis state is described by the following interface: + ```typescript + interface ConsumerGenesisState { + providerClientState: ClientState + providerConsensusState: ConsensusState + initialValSet: [ValidatorUpdate] + } + ``` + +The provider CCV module handles governance proposals to spawn new consumer chains and to stop existing consumer chains. +While the structure of governance proposals is specific to every ABCI application (for an example, see the `Proposal` interface in the [Governance module documentation](https://docs.cosmos.network/v0.44/modules/gov/) of Cosmos SDK), +this specification expects the following fields to be part of the proposals to spawn new consumer chains (i.e., `SpawnConsumerChainProposal`) and to stop existing ones (i.e., `StopConsumerChainProposal`): + ```typescript + interface SpawnConsumerChainProposal { + chainId: string + initialHeight: Height + spawnTime: Timestamp + lockUnbondingOnTimeout: Bool + } + ``` + - `chainId` is the proposed chain ID of the new consumer chain. It must be different from all other consumer chain IDs of the executing provider chain. + - `initialHeight` is the proposed initial height of new consumer chain. + For an example, take a look at the `Height` defined in [ICS 7](../../client/ics-007-tendermint-client). + - `spawnTime` is the time on the provider chain at which the consumer chain genesis is finalized and all validators are responsible to start their consumer chain validator node. + - `lockUnbondingOnTimeout` is a boolean value that indicates whether the funds corresponding to the outstanding unbonding operations are to be released in case of a timeout. In case `lockUnbondingOnTimeout == true`, a governance proposal to stop the timed out consumer chain would be necessary to release the locked funds. + ```typescript + interface StopConsumerChainProposal { + chainId: string + stopTime: Timestamp + } + ``` + - `chainId` is the chain ID of the consumer chain to be removed. It must be the ID of an existing consumer chain of the executing provider chain. + - `stopTime` is the time on the provider chain at which all validators are responsible to stop their consumer chain validator node. + +During the CCV channel opening handshake, the provider chain adds the address of its distribution module account to the channel version as metadata (as described in [ICS 4](../../core/ics-004-channel-and-packet-semantics/README.md#definitions)). +The metadata structure is described by the following interface: +```typescript +interface CCVHandshakeMetadata { + providerDistributionAccount: string // the account's address + version: string +} +``` +This specification assumes that the provider CCV module has access to the address of the distribution module account through the `GetDistributionAccountAddress()` method. For an example, take a look at the [auth module](https://docs.cosmos.network/v0.44/modules/auth/) of Cosmos SDK. + +During the CCV channel opening handshake, the provider chain adds the address of its distribution module account to the channel version as metadata (as described in [ICS 4](../../core/ics-004-channel-and-packet-semantics/README.md#definitions)). +The metadata structure is described by the following interface: +```typescript +interface CCVHandshakeMetadata { + providerDistributionAccount: string // the account's address + version: string +} +``` +This specification assumes that the provider CCV module has access to the address of the distribution module account through the `GetDistributionAccountAddress()` method. For an example, take a look at the [auth module](https://docs.cosmos.network/v0.44/modules/auth/) of Cosmos SDK. + +## CCV Packets +[↑ Back to Outline](#outline) + +The structure of the packets sent through the CCV channel is defined by the `Packet` interface in [ICS 4](../../core/ics-004-channel-and-packet-semantics). +The following packet data types are required by the CCV module: +- `VSCPacketData` contains a list of validator updates, i.e., + ```typescript + interface VSCPacketData { + // the id of this VSC + id: uint64 + // validator updates + updates: [ValidatorUpdate] + // downtime slash requests acknowledgements, + // i.e., list of validator addresses + downtimeSlashAcks: [string] + } + ``` +- `VSCMaturedPacketData` contains the ID of the VSC that reached maturity, i.e., + ```typescript + interface VSCMaturedPacketData { + id: uint64 // the id of the VSC that reached maturity + } + ``` +- `SlashPacketData` contains a request to slash a validator, i.e., + ```typescript + interface SlashPacketData { + valAddress: string // validator address, i.e., the hash of its public key + valPower: int64 + vscId: uint64 + downtime: Bool + } + ``` +> Note that for brevity we use e.g., `VSCPacket` to refer to a packet with `VSCPacketData` as its data. + +Packets are acknowledged by the remote side by sending back an `Acknowledgement` that contains either a result (in case of success) or an error (as defined in [ICS 4](../../core/ics-004-channel-and-packet-semantics/README.md#acknowledgement-envelope)). +The following acknowledgement types are required by the CCV module: +```typescript +type VSCPacketAcknowledgement = VSCPacketSuccess | VSCPacketError; +type VSCMaturedPacketAcknowledgement = VSCMaturedPacketSuccess | VSCMaturedPacketError; +type SlashPacketAcknowledgement = SlashPacketSuccess | SlashPacketError; +type PacketAcknowledgement = PacketSuccess | PacketError; // general ack +``` + +## CCV State +[↑ Back to Outline](#outline) + +This section describes the internal state of the CCV module. For simplicity, the state is described by a set of variables; for each variable, both the type and a brief description is provided. In practice, all the state (except for hardcoded constants, e.g., `ProviderPortId`) is stored in a key/value store (KVS). The host state machine provides a KVS interface with three functions, i.e., `get()`, `set()`, and `delete()` (as defined in [ICS 24](../../core/ics-024-host-requirements)). + +- `ccvVersion = "ccv-1"` is the CCV expected version. Both the provider and the consumer chains need to agree on this version. +- `zeroTimeoutHeight = {0,0}` is the `timeoutHeight` (as defined in [ICS 4](../../core/ics-004-channel-and-packet-semantics)) used by CCV for sending packets. Note that CCV uses `ccvTimeoutTimestamp` for sending CCV packets and `transferTimeoutTimestamp` for transferring tokens. +- `ccvTimeoutTimestamp: uint64` is the `timeoutTimestamp` (as defined in [ICS 4](../../core/ics-004-channel-and-packet-semantics)) for sending CCV packets. The CCV protocol is responsible of setting `ccvTimeoutTimestamp` such that the *Correct Relayer* assumption is feasible. +- `transferTimeoutTimestamp: uint64` is the `timeoutTimestamp` (as defined in [ICS 4](../../core/ics-004-channel-and-packet-semantics)) for transferring tokens. + +### State on Provider Chain +[↑ Back to Outline](#outline) + +- `ProviderPortId = "provider"` is the port ID the provider CCV module is expected to bind to. +- `pendingSpawnProposals: [SpawnConsumerChainProposal]` is a list of pending governance proposals to spawn new consumer chains. +- `pendingStopProposals: [StopConsumerChainProposal]` is a list of pending governance proposals to stop existing consumer chains. + Both lists of pending governance proposals expose the following interface: +```typescript + interface [Proposal] { + // append a proposal to the list; the list is modified + Append(p: Proposal) + + // remove a proposal from the list; the list is modified + Remove(p: Proposal) + } + ``` +- `lockUnbondingOnTimeout: Map` is a mapping from consumer chain IDs to the boolean values indicating whether the funds corresponding to the in progress unbonding operations are to be released in case of a timeout. +- `chainToClient: Map` is a mapping from consumer chain IDs to the associated client IDs. +- `chainToChannel: Map` is a mapping from consumer chain IDs to the CCV channel IDs. +- `channelToChain: Map` is a mapping from CCV channel IDs to consumer chain IDs. +- `pendingVSCPackets: Map` is a mapping from consumer chain IDs to a list of pending `VSCPacketData`s that must be sent to the consumer chain once the CCV channel is established. The map exposes the following interface: + ```typescript + interface Map { + // append a VSCPacketData to the list mapped to chainId; + // the list is modified + Append(chainId: string, data: VSCPacketData) + + // remove all the VSCPacketData mapped to chainId; + // the list is modified + Remove(chainId: string) + } +- `vscId: uint64` is a monotonic strictly increasing and positive ID that is used to uniquely identify the VSCs sent to the consumer chains. + Note that `0` is used as a special ID for the mapping from consumer heights to provider heights. +- `initialHeights: Map` is a mapping from consumer chain IDs to the heights on the provider chain. + For every consumer chain, the mapping stores the height when the CCV channel to that consumer chain is established. + Note that the provider validator set at this height matches the validator set at the height when the first VSC is provided to that consumer chain. + It enables the mapping from consumer heights to provider heights. +- `VSCtoH: Map` is a mapping from VSC IDs to heights on the provider chain. It enables the mapping from consumer heights to provider heights, + i.e., the voting power at height `VSCtoH[id]` on the provider chain was last updated by the validator updates contained in the VSC with ID `id`. +- `unbondingOps: Map` is a mapping that enables accessing for every unbonding operation the list of consumer chains that are still unbonding. When unbonding operations are initiated, the Staking module calls the `AfterUnbondingInitiated()` [hook](#ccv-pcf-hook-afubopcr1); this leads to the creation of a new `UnbondingOperation`, which is defined as + ```typescript + interface UnbondingOperation { + id: uint64 + // list of consumer chain IDs that are still unbonding + unbondingChainIds: [string] + } + ``` +- `vscToUnbondingOps: Map<(string, uint64), [uint64]>` is a mapping from `(chainId, vscId)` tuples to a list of unbonding operation IDs. + It enables the provider CCV module to match a `VSCMaturedPacket{vscId}`, received from a consumer chain with `chainId`, with the corresponding unbonding operations. + As a result, `chainId` can be removed from the list of consumer chains that are still unbonding these operations. + For more details see how received `VSCMaturedPacket`s [are handled](#ccv-pcf-rcvmat1). +- `downtimeSlashRequests: Map` is a mapping from `chainId`s to lists of validator addresses, + i.e., `downtimeSlashRequests[chainId]` contains all the validator addresses for which the provider chain received slash requests for downtime from the consumer chain with `chainId`. + +### State on Consumer Chain +[↑ Back to Outline](#outline) + +- `ConsumerPortId = "consumer"` is the port ID the consumer CCV module is expected to bind to. +- `consumerUnbondingPeriod: Duration"` is the unbonding period on the consumer chain. +- `providerClient: Identifier` identifies the client of the provider chain (on the consumer chain) that the CCV channel is build upon. +- `providerChannel: Identifier` identifies the consumer's channel end of the CCV channel. +- `validatorSet: ` is a mapping that stores the validators in the validator set of the consumer chain. Each validator is described by a `CrossChainValidator` data structure, which is defined as + ```typescript + interface CrossChainValidator { + address: string // validator address, i.e., the hash of its public key + power: int64 + } + ``` +- `pendingChanges: [ValidatorUpdate]` is a list of `ValidatorUpdate`s received, but not yet applied to the validator set. + It is emptied on every `EndBlock()`. The list exposes the following interface: + ```typescript + interface [ValidatorUpdate] { + // append updates to the list; + // the list is modified + Append(updates: [ValidatorUpdate]) + + // return an aggregated list of updates, i.e., + // keep only the latest update per validator; + // the original list is not modified + Aggregate(): [ValidatorUpdate] + + // remove all the updates from the list; + // the list is modified + RemoveAll() + } + ``` +- `HtoVSC: Map` is a mapping from consumer chain heights to VSC IDs. It enables the mapping from consumer heights to provider heights., i.e., + - if `HtoVSC[h] == 0`, then the voting power on the consumer chain at height `h` was setup at genesis during Channel Initialization; + - otherwise, the voting power on the consumer chain at height `h` was updated by the VSC with ID `HtoVSC[h]`. +- `maturingVSCs: [(uint64, uint64)]` is a list of `(id, ts)` tuples, where `id` is the ID of a VSC received via a `VSCPacket` and `ts` is the timestamp at which the VSC reaches maturity on the consumer chain. + The list is used to keep track of when unbonding operations are matured on the consumer chain. It exposes the following interface: + ```typescript + interface [(uint64, uint64)] { + // add a VSC id with its maturity timestamp to the list; + // the list is modified + Add(id: uint64, ts: uint64) + + // return the list sorted by the maturity timestamps; + // the original list is not modified + SortedByMaturityTime(): [(uint64, uint64)] + + // remove (id, ts) from the list; + // the list is modified + Remove(id: uint64, ts: uint64) + } + ``` +- `pendingSlashRequests: [SlashRequest]` is a list of pending `SlashRequest`s that must be sent to the provider chain once the CCV channel is established. A `SlashRequest` consist of a `SlashPacketData` and a flag indicating whether the request is for downtime slashing. The list exposes the following interface: + ```typescript + interface SlashRequest { + data: SlashPacketData + downtime: Bool + } + interface [SlashRequest] { + // append a SlashRequest to the list; + // the list is modified + Append(data: SlashRequest) + + // return the reverse list, i.e., latest SlashRequest first; + // the original list is not modified + Reverse(): [SlashRequest] + + // remove all the SlashRequest; + // the list is modified + RemoveAll() + } + ``` +- `outstandingDowntime: ` is a mapping from validator addresses to boolean values. + `outstandingDowntime[valAddr] == TRUE` entails that the consumer chain sent a request to slash for downtime the validator with address `valAddr`. + `outstandingDowntime[valAddr]` is set to false once the consumer chain receives a confirmation that the downtime slash request was received by the provider chain, i.e., a `VSCPacket` that contains `valAddr` in `downtimeSlashAcks`. + The mapping enables the consumer CCV module to avoid sending to the provider chain multiple slashing requests for the same downtime infraction. +- `providerDistributionAccount: string` is the address of the distribution module account on the provider chain. It enables the consumer chain to transfer rewards to the provider chain. +- `distributionChannelId: Identifier` is the ID of the distribution token transfer channel used for sending rewards to the provider chain. +- `BlocksPerDistributionTransfer: int64` is the interval (in number of blocks) between two distribution token transfers. +- `lastDistributionTransferHeight: Height` is the block height of the last distribution token transfer. +- `ccvAccount: string` is the address of the CCV module account where a fraction of the consumer chain rewards are collected before being transferred to the provider chain. \ No newline at end of file diff --git a/spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.excalidraw b/spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.excalidraw new file mode 100644 index 000000000..9a4cf8517 --- /dev/null +++ b/spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.excalidraw @@ -0,0 +1,1448 @@ +{ + "type": "excalidraw", + "version": 2, + "source": "https://excalidraw.com", + "elements": [ + { + "type": "text", + "version": 1005, + "versionNonce": 942012557, + "isDeleted": false, + "id": "DcYomqVwJx0rUjMvf5S5b", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1391.0634920634916, + "y": 1852.9047619047617, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 361, + "height": 35, + "seed": 484186313, + "groupIds": [], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717847398, + "link": null, + "fontSize": 28, + "fontFamily": 1, + "text": "CCV - Reward Distribution", + "baseline": 25, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "CCV - Reward Distribution" + }, + { + "type": "text", + "version": 1473, + "versionNonce": 1279271715, + "isDeleted": false, + "id": "yqi6dzvpzblq17ysowkTo", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1184.1995040738243, + "y": 1919.7150027318748, + "strokeColor": "#364fc7", + "backgroundColor": "transparent", + "width": 138, + "height": 26, + "seed": 578772677, + "groupIds": [], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717830267, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Provider Chain", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Provider Chain" + }, + { + "type": "text", + "version": 1700, + "versionNonce": 380537603, + "isDeleted": false, + "id": "Y19fC1uuzabCFyV0s97Ip", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1774.6009368748905, + "y": 1919.7150027318748, + "strokeColor": "#e67700", + "backgroundColor": "transparent", + "width": 148, + "height": 26, + "seed": 1161289003, + "groupIds": [], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717824957, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Consumer Chain", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Consumer Chain" + }, + { + "type": "text", + "version": 1418, + "versionNonce": 856000099, + "isDeleted": false, + "id": "A_uPQosGByCb18jg5F8J3", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1608.6178858721328, + "y": 1957.1879109167996, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 112, + "height": 26, + "seed": 1240462166, + "groupIds": [], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648717754192, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "CCV Module", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "CCV Module" + }, + { + "type": "arrow", + "version": 3989, + "versionNonce": 2125688557, + "isDeleted": false, + "id": "vpFHq3t2ppDoZ0A65BDZu", + "fillStyle": "hachure", + "strokeWidth": 2, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1551.1900175267103, + "y": 2344.842556707134, + "strokeColor": "#000000", + "backgroundColor": "#ced4da", + "width": 128.79181255561082, + "height": 0.08876270859309443, + "seed": 564068565, + "groupIds": [ + "kCy-i3wrt_ZLgIeQ4otUP" + ], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648718352186, + "link": null, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": "triangle", + "points": [ + [ + 0, + 0 + ], + [ + -128.79181255561082, + -0.08876270859309443 + ] + ] + }, + { + "type": "text", + "version": 2037, + "versionNonce": 196149859, + "isDeleted": false, + "id": "REPxg78R4E5rz3sm5KHSv", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1409.5528637544644, + "y": 2302.708121633686, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 146, + "height": 25, + "seed": 208528123, + "groupIds": [ + "kCy-i3wrt_ZLgIeQ4otUP" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718352186, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "TokenTransfer", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "TokenTransfer" + }, + { + "id": "IjbvMm7oV9sVgP7WlGh5E", + "type": "line", + "x": 1799.9264992474484, + "y": 2096.174492510282, + "width": 0.4985622223937298, + "height": 33.65304102189839, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 4, + "strokeStyle": "dotted", + "roughness": 1, + "opacity": 100, + "groupIds": [], + "strokeSharpness": "round", + "seed": 806893027, + "version": 108, + "versionNonce": 348679437, + "isDeleted": false, + "boundElements": null, + "updated": 1648718383497, + "link": null, + "points": [ + [ + 0, + 0 + ], + [ + 0.4985622223937298, + 33.65304102189839 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null + }, + { + "type": "rectangle", + "version": 3280, + "versionNonce": 1529278413, + "isDeleted": false, + "id": "34mJiRUfZv_whlGRmiJJO", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 20, + "angle": 0, + "x": 1580.7964573007043, + "y": 1993.826747397683, + "strokeColor": "#e67700", + "backgroundColor": "#e67700", + "width": 438, + "height": 90.41269841269803, + "seed": 906912827, + "groupIds": [ + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "Mi1I3PpLY1MQGIPxt7fC1", + "type": "arrow" + }, + { + "id": "DURyamuWvIhE5o-GLqnvp", + "type": "arrow" + }, + { + "id": "-sQ1lqt81ejZKXt6Q2HFf", + "type": "arrow" + }, + { + "id": "gMMtc7H_hFXaSquI_JbUz", + "type": "arrow" + }, + { + "id": "qUiA0J-sfT84YpVQWlEot", + "type": "arrow" + }, + { + "id": "jxiIfnYuV__VAbb-JgmY7", + "type": "arrow" + }, + { + "id": "cFz81tlJ2NMZiYzWVMuf6", + "type": "arrow" + }, + { + "id": "vpFHq3t2ppDoZ0A65BDZu", + "type": "arrow" + } + ], + "updated": 1648718365618, + "link": null + }, + { + "type": "text", + "version": 1668, + "versionNonce": 47873923, + "isDeleted": false, + "id": "m_vQSEBRga8RR7VuL27UY", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1821.73693349118, + "y": 1999.4973823183186, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 109, + "height": 50, + "seed": 765969819, + "groupIds": [ + "lNYd5uxp6Xm5xLMU-zrby", + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "tvGd783eUc39eNWP1L7-j", + "type": "arrow" + } + ], + "updated": 1648718365618, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "fraction of\nrewards", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "fraction of\nrewards" + }, + { + "type": "arrow", + "version": 3963, + "versionNonce": 229731885, + "isDeleted": false, + "id": "tvGd783eUc39eNWP1L7-j", + "fillStyle": "hachure", + "strokeWidth": 2, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1932.8019559784343, + "y": 2060.997674669792, + "strokeColor": "#000000", + "backgroundColor": "#ced4da", + "width": 125.15697875770252, + "height": 1.0514920517930477, + "seed": 321384565, + "groupIds": [ + "Uvbj_Wiv_4OirTlk_pHjj", + "lNYd5uxp6Xm5xLMU-zrby", + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648718365618, + "link": null, + "startBinding": { + "elementId": "m_vQSEBRga8RR7VuL27UY", + "focus": -1.415085392769348, + "gap": 11.50029235147349 + }, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": "triangle", + "points": [ + [ + 0, + 0 + ], + [ + -125.15697875770252, + -1.0514920517930477 + ] + ] + }, + { + "id": "xbQJbKMN6ij9ve7OviLr7", + "type": "rectangle", + "x": 1599.902692012232, + "y": 2035.4081490120375, + "width": 188, + "height": 35, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "sharp", + "seed": 210145315, + "version": 332, + "versionNonce": 1528635533, + "isDeleted": false, + "boundElements": [ + { + "type": "text", + "id": "CYcPnlANLHU04SN9990JF" + } + ], + "updated": 1648718365618, + "link": null + }, + { + "id": "CYcPnlANLHU04SN9990JF", + "type": "text", + "x": 1604.902692012232, + "y": 2041.4081490120375, + "width": 178, + "height": 23, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "sharp", + "seed": 15459693, + "version": 299, + "versionNonce": 1227668163, + "isDeleted": false, + "boundElements": null, + "updated": 1648718365618, + "link": null, + "text": "$ CCV account", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "verticalAlign": "middle", + "baseline": 17, + "containerId": "xbQJbKMN6ij9ve7OviLr7", + "originalText": "$ CCV account" + }, + { + "type": "text", + "version": 1938, + "versionNonce": 958629613, + "isDeleted": false, + "id": "Oz5lUjmcWXSCVOUr-aDA6", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1960.8164836480091, + "y": 1999.0985727945085, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 51, + "height": 50, + "seed": 756640341, + "groupIds": [ + "dM4n286bGb7i0G9C3JQhZ" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718365618, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Block\nHc", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Block\nHc" + }, + { + "type": "rectangle", + "version": 3445, + "versionNonce": 32402019, + "isDeleted": false, + "id": "smdUW8hJpPhBv4aV5ay_q", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 20, + "angle": 0, + "x": 1580.7964573007043, + "y": 2266.901858466779, + "strokeColor": "#e67700", + "backgroundColor": "#e67700", + "width": 438, + "height": 90.41269841269803, + "seed": 1103023629, + "groupIds": [ + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "Mi1I3PpLY1MQGIPxt7fC1", + "type": "arrow" + }, + { + "id": "DURyamuWvIhE5o-GLqnvp", + "type": "arrow" + }, + { + "id": "-sQ1lqt81ejZKXt6Q2HFf", + "type": "arrow" + }, + { + "id": "gMMtc7H_hFXaSquI_JbUz", + "type": "arrow" + }, + { + "id": "qUiA0J-sfT84YpVQWlEot", + "type": "arrow" + }, + { + "id": "jxiIfnYuV__VAbb-JgmY7", + "type": "arrow" + }, + { + "id": "cFz81tlJ2NMZiYzWVMuf6", + "type": "arrow" + }, + { + "id": "vpFHq3t2ppDoZ0A65BDZu", + "type": "arrow" + } + ], + "updated": 1648718365618, + "link": null + }, + { + "type": "text", + "version": 1833, + "versionNonce": 709763405, + "isDeleted": false, + "id": "F6tHqrlehaqv4NgVfyYod", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1821.73693349118, + "y": 2272.5724933874144, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 109, + "height": 50, + "seed": 1491510595, + "groupIds": [ + "iVaTc7j72nXI1Q2rCU61q", + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "J8lhUtkiur7yuJP0IVsWe", + "type": "arrow" + } + ], + "updated": 1648718365618, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "fraction of\nrewards", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "fraction of\nrewards" + }, + { + "type": "arrow", + "version": 4359, + "versionNonce": 35202563, + "isDeleted": false, + "id": "J8lhUtkiur7yuJP0IVsWe", + "fillStyle": "hachure", + "strokeWidth": 2, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1932.8019559784343, + "y": 2334.072785738888, + "strokeColor": "#000000", + "backgroundColor": "#ced4da", + "width": 125.15697875770252, + "height": 1.0514920517930477, + "seed": 171148397, + "groupIds": [ + "pplowjM61J9zLv8WW_Iet", + "iVaTc7j72nXI1Q2rCU61q", + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648718365618, + "link": null, + "startBinding": { + "elementId": "F6tHqrlehaqv4NgVfyYod", + "focus": -1.415085392769348, + "gap": 11.50029235147349 + }, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": "triangle", + "points": [ + [ + 0, + 0 + ], + [ + -125.15697875770252, + -1.0514920517930477 + ] + ] + }, + { + "type": "rectangle", + "version": 494, + "versionNonce": 279670179, + "isDeleted": false, + "id": "Alaps4d4CIl7xNCwR5rzQ", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1599.902692012232, + "y": 2308.4832600811333, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 188, + "height": 35, + "seed": 134677731, + "groupIds": [ + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "ew0ofctlhOyFp3fOfssPc", + "type": "text" + }, + { + "type": "text", + "id": "ew0ofctlhOyFp3fOfssPc" + } + ], + "updated": 1648718365619, + "link": null + }, + { + "type": "text", + "version": 464, + "versionNonce": 876999181, + "isDeleted": false, + "id": "ew0ofctlhOyFp3fOfssPc", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1604.902692012232, + "y": 2314.4832600811333, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 178, + "height": 23, + "seed": 595750605, + "groupIds": [ + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718365619, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "$ CCV account", + "baseline": 17, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "Alaps4d4CIl7xNCwR5rzQ", + "originalText": "$ CCV account" + }, + { + "type": "text", + "version": 2105, + "versionNonce": 282313027, + "isDeleted": false, + "id": "qKtTARj56MbaSPbxOCPJk", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1959.8164836480091, + "y": 2272.1736838636043, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 51, + "height": 50, + "seed": 523923587, + "groupIds": [ + "pZnJ-ggCgfXjtpihWQO_h" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718365619, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Block\nHc+x", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Block\nHc+x" + }, + { + "type": "rectangle", + "version": 576, + "versionNonce": 598161635, + "isDeleted": false, + "id": "GLbhbcWSEyuebylqDnpU2", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1187.9667306872643, + "y": 2288.408149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 188, + "height": 57, + "seed": 1340530701, + "groupIds": [ + "VtmzX2Iudw6NpYzBxjnOR", + "0Xag4f3CHNBceQxWD5THH" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "v7H0D2SFSeTqd98kFr9Tn", + "type": "text" + }, + { + "id": "v7H0D2SFSeTqd98kFr9Tn", + "type": "text" + }, + { + "type": "text", + "id": "v7H0D2SFSeTqd98kFr9Tn" + } + ], + "updated": 1648718352186, + "link": null + }, + { + "type": "text", + "version": 550, + "versionNonce": 942635725, + "isDeleted": false, + "id": "v7H0D2SFSeTqd98kFr9Tn", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1192.9667306872643, + "y": 2293.408149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 178, + "height": 46, + "seed": 780186435, + "groupIds": [ + "VtmzX2Iudw6NpYzBxjnOR", + "0Xag4f3CHNBceQxWD5THH" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718352186, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "$ distribution \naccount", + "baseline": 40, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "GLbhbcWSEyuebylqDnpU2", + "originalText": "$ distribution account" + }, + { + "type": "rectangle", + "version": 3481, + "versionNonce": 1085547651, + "isDeleted": false, + "id": "AkC-Q6AHwm6Ua2co050XG", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 20, + "angle": 0, + "x": 1105.9667306872643, + "y": 2267.868466472355, + "strokeColor": "#1864ab", + "backgroundColor": "#1864ab", + "width": 288.25, + "height": 88.57936507936469, + "seed": 1841008003, + "groupIds": [ + "0Xag4f3CHNBceQxWD5THH" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "Mi1I3PpLY1MQGIPxt7fC1", + "type": "arrow" + }, + { + "id": "DURyamuWvIhE5o-GLqnvp", + "type": "arrow" + }, + { + "id": "-sQ1lqt81ejZKXt6Q2HFf", + "type": "arrow" + }, + { + "id": "gMMtc7H_hFXaSquI_JbUz", + "type": "arrow" + }, + { + "id": "qUiA0J-sfT84YpVQWlEot", + "type": "arrow" + }, + { + "id": "jxiIfnYuV__VAbb-JgmY7", + "type": "arrow" + }, + { + "id": "cFz81tlJ2NMZiYzWVMuf6", + "type": "arrow" + } + ], + "updated": 1648718352186, + "link": null + }, + { + "type": "text", + "version": 1836, + "versionNonce": 1869650221, + "isDeleted": false, + "id": "ukJYsO2TyJCEXc5fyeEt_", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1111.4667306872643, + "y": 2275.908149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 51, + "height": 50, + "seed": 1647435235, + "groupIds": [ + "0Xag4f3CHNBceQxWD5THH" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718352186, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Block\nHp2", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Block\nHp2" + }, + { + "type": "arrow", + "version": 3920, + "versionNonce": 563157581, + "isDeleted": false, + "id": "t6EBWr_9oI5RhHG2G77KC", + "fillStyle": "hachure", + "strokeWidth": 2, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1557.4055642998305, + "y": 2074.3425567071336, + "strokeColor": "#000000", + "backgroundColor": "#ced4da", + "width": 128.79181255561082, + "height": 0.08876270859309443, + "seed": 1421736451, + "groupIds": [ + "jL3JwgrGJGsJ9iKIcLo8U" + ], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648717806780, + "link": null, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": "triangle", + "points": [ + [ + 0, + 0 + ], + [ + -128.79181255561082, + -0.08876270859309443 + ] + ] + }, + { + "type": "text", + "version": 1968, + "versionNonce": 1331576067, + "isDeleted": false, + "id": "Q1QsNgKGpkQte_Ty3Gq5x", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1415.7684105275844, + "y": 2032.2081216336865, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 146, + "height": 25, + "seed": 1505287085, + "groupIds": [ + "jL3JwgrGJGsJ9iKIcLo8U" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717806780, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "TokenTransfer", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "TokenTransfer" + }, + { + "type": "rectangle", + "version": 509, + "versionNonce": 932698541, + "isDeleted": false, + "id": "s_dUdYMbfAgY-wx64-cZy", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1187.9667306872643, + "y": 2017.908149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 188, + "height": 57, + "seed": 1603649955, + "groupIds": [ + "XrGNgTVaQYbbqnVbqe1WW", + "X2TBHJO-i4ICHszzaNf9v" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "HgpbjFpWkkElb6JHK30jf", + "type": "text" + }, + { + "id": "HgpbjFpWkkElb6JHK30jf", + "type": "text" + }, + { + "id": "HgpbjFpWkkElb6JHK30jf", + "type": "text" + }, + { + "type": "text", + "id": "HgpbjFpWkkElb6JHK30jf" + } + ], + "updated": 1648717890359, + "link": null + }, + { + "type": "text", + "version": 482, + "versionNonce": 296592291, + "isDeleted": false, + "id": "HgpbjFpWkkElb6JHK30jf", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1192.9667306872643, + "y": 2022.908149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 178, + "height": 46, + "seed": 1591401997, + "groupIds": [ + "XrGNgTVaQYbbqnVbqe1WW", + "X2TBHJO-i4ICHszzaNf9v" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717890359, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "$ distribution \naccount", + "baseline": 40, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "s_dUdYMbfAgY-wx64-cZy", + "originalText": "$ distribution account" + }, + { + "type": "rectangle", + "version": 3413, + "versionNonce": 1680481293, + "isDeleted": false, + "id": "nAD6yE-Il7_lA6MHEDRRU", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 20, + "angle": 0, + "x": 1105.9667306872643, + "y": 1997.368466472355, + "strokeColor": "#1864ab", + "backgroundColor": "#1864ab", + "width": 288.25, + "height": 88.57936507936469, + "seed": 928224579, + "groupIds": [ + "X2TBHJO-i4ICHszzaNf9v" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "Mi1I3PpLY1MQGIPxt7fC1", + "type": "arrow" + }, + { + "id": "DURyamuWvIhE5o-GLqnvp", + "type": "arrow" + }, + { + "id": "-sQ1lqt81ejZKXt6Q2HFf", + "type": "arrow" + }, + { + "id": "gMMtc7H_hFXaSquI_JbUz", + "type": "arrow" + }, + { + "id": "qUiA0J-sfT84YpVQWlEot", + "type": "arrow" + }, + { + "id": "jxiIfnYuV__VAbb-JgmY7", + "type": "arrow" + }, + { + "id": "cFz81tlJ2NMZiYzWVMuf6", + "type": "arrow" + } + ], + "updated": 1648717890359, + "link": null + }, + { + "type": "text", + "version": 1765, + "versionNonce": 1612658499, + "isDeleted": false, + "id": "24NFD0EAJBhRkLJaPjCB7", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1111.4667306872643, + "y": 2005.408149012037, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 51, + "height": 50, + "seed": 1229821037, + "groupIds": [ + "X2TBHJO-i4ICHszzaNf9v" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648717890359, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "Block\nHp1", + "baseline": 43, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "Block\nHp1" + }, + { + "type": "rectangle", + "version": 3523, + "versionNonce": 1093005251, + "isDeleted": false, + "id": "5UhO9vf3ic8tfV-ct-H4a", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 20, + "angle": 0, + "x": 1580.7964573007043, + "y": 2141.4520030011813, + "strokeColor": "#e67700", + "backgroundColor": "#e67700", + "width": 438, + "height": 67.91269841269799, + "seed": 1223050061, + "groupIds": [ + "kEhD5pp9ZyDcmuVHj7jXo" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "Mi1I3PpLY1MQGIPxt7fC1", + "type": "arrow" + }, + { + "id": "DURyamuWvIhE5o-GLqnvp", + "type": "arrow" + }, + { + "id": "-sQ1lqt81ejZKXt6Q2HFf", + "type": "arrow" + }, + { + "id": "gMMtc7H_hFXaSquI_JbUz", + "type": "arrow" + }, + { + "id": "qUiA0J-sfT84YpVQWlEot", + "type": "arrow" + }, + { + "id": "jxiIfnYuV__VAbb-JgmY7", + "type": "arrow" + }, + { + "id": "cFz81tlJ2NMZiYzWVMuf6", + "type": "arrow" + }, + { + "id": "vpFHq3t2ppDoZ0A65BDZu", + "type": "arrow" + } + ], + "updated": 1648718382746, + "link": null + }, + { + "type": "text", + "version": 1929, + "versionNonce": 1078206957, + "isDeleted": false, + "id": "ORXBeHtSMUVrEyiFaIik_", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1804.48693349118, + "y": 2149.6226379218165, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 196, + "height": 25, + "seed": 1376527363, + "groupIds": [ + "EZZbZ1FR2RI1InChFO1wi", + "kEhD5pp9ZyDcmuVHj7jXo" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "0hQr8j4kqSD8M3pL0Qbq9", + "type": "arrow" + } + ], + "updated": 1648718382746, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "fraction of rewards", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "top", + "containerId": null, + "originalText": "fraction of rewards" + }, + { + "type": "arrow", + "version": 4612, + "versionNonce": 1861812067, + "isDeleted": false, + "id": "0hQr8j4kqSD8M3pL0Qbq9", + "fillStyle": "hachure", + "strokeWidth": 2, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1985.0603540692218, + "y": 2190.3258903405326, + "strokeColor": "#000000", + "backgroundColor": "#ced4da", + "width": 177.41537684849004, + "height": 0.2544521190352498, + "seed": 1060786605, + "groupIds": [ + "fPmYjanoLwZxiv--xyo7a", + "EZZbZ1FR2RI1InChFO1wi", + "kEhD5pp9ZyDcmuVHj7jXo" + ], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648718382746, + "link": null, + "startBinding": { + "elementId": "ORXBeHtSMUVrEyiFaIik_", + "focus": -2.221803403364259, + "gap": 15.703252418716147 + }, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": "triangle", + "points": [ + [ + 0, + 0 + ], + [ + -177.41537684849004, + -0.2544521190352498 + ] + ] + }, + { + "type": "rectangle", + "version": 563, + "versionNonce": 2064194307, + "isDeleted": false, + "id": "AaZnP-uk9pLjwUgVCuPxX", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1599.902692012232, + "y": 2160.5334046155363, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 188, + "height": 35, + "seed": 630107043, + "groupIds": [ + "kEhD5pp9ZyDcmuVHj7jXo" + ], + "strokeSharpness": "sharp", + "boundElements": [ + { + "id": "y72sz2bjJqP1nhMBGOJmw", + "type": "text" + }, + { + "id": "y72sz2bjJqP1nhMBGOJmw", + "type": "text" + }, + { + "type": "text", + "id": "y72sz2bjJqP1nhMBGOJmw" + } + ], + "updated": 1648718382747, + "link": null + }, + { + "type": "text", + "version": 532, + "versionNonce": 1777093293, + "isDeleted": false, + "id": "y72sz2bjJqP1nhMBGOJmw", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1604.902692012232, + "y": 2166.5334046155363, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 178, + "height": 23, + "seed": 1086166029, + "groupIds": [ + "kEhD5pp9ZyDcmuVHj7jXo" + ], + "strokeSharpness": "sharp", + "boundElements": [], + "updated": 1648718382747, + "link": null, + "fontSize": 20, + "fontFamily": 1, + "text": "$ CCV account", + "baseline": 17, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "AaZnP-uk9pLjwUgVCuPxX", + "originalText": "$ CCV account" + }, + { + "type": "line", + "version": 162, + "versionNonce": 1275754051, + "isDeleted": false, + "id": "LWfeCA_MHMz7HlX7Nl_HY", + "fillStyle": "solid", + "strokeWidth": 4, + "strokeStyle": "dotted", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1799.471492174934, + "y": 2221.3874474682207, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0.4985622223937298, + "height": 33.65304102189839, + "seed": 809602285, + "groupIds": [], + "strokeSharpness": "round", + "boundElements": [], + "updated": 1648718383497, + "link": null, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0.4985622223937298, + 33.65304102189839 + ] + ] + } + ], + "appState": { + "gridSize": null, + "viewBackgroundColor": "#ffffff" + }, + "files": {} +} \ No newline at end of file diff --git a/spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.png b/spec/app/ics-028-cross-chain-validation/figures/ccv-distribution-overview.png new file mode 100644 index 0000000000000000000000000000000000000000..40f740d5b1e4562931bf5902c89db3bc197228ad GIT binary patch literal 314861 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

LWsO_B!X<2hY5dR333W$s({ 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

-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

rHG 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