# High Level Possible Roadmap
* WASM integration as an execution environment for smart contracts
* Higher level language that compiles to Michelson and/or WASM
* Fully private payments for transfers between two accounts (1)
* add them to the smart contracting environment to allow aribtrary assets
* ensure that it works within the staking environment
* Change the consensus layer to Tendermint consensus for faster blocks and finality (1)
* Use something like Avalanche for block production or Ouroborous Prios (borrowed from AFG)
* Light clients for Tezos that allow phones to verify the state of the chain (1)
* IBC integration to allow token movements from and to other chains
* can be added by adding a primitive to Michelson to track Tendermint chain commits
* Better randomness generation through a VDF (1)
* State-syncing for faster synchronisation
* Shared security for WASM state machines to allow more complex state transition functions (similar to Polkadot)
* Overhaul of the account system (our upgrade)
* Allow bakers to determine their operations in smart contracts (our upgrade)
* Consider changing to a governance model similar to Polkadot
* requires research on what features we want from governance and whether the new one is an improvement
* enforce that some changes require larger approval than others (ie restrict the surface area that governance has access too)
* futurachy style (1)
* mempool optimisation that make transaction verification cheaper (1)
* transactions that reference a recent block hash are cheaper to execute and transactions without it are more expensive
* enables people to offline sign transactions more easily
* add cryptographic primitives to Michelson
* enable multiple entry points into smart contracts (1)
* allow automatic and delayed invocation of smart contracts
* state sharding similar to Ethereum
* better PoS model
* it's not inflation but demorage
* GC implementation to reduce the state growth for normal users
* Improvements to storage, maybe switch away from irmin
* Change the merkle-tree to be more light-client friendly
* Build derivatives over the staked assets
* Change the account model to allow for pruning
* Simplest way is with a global counter that always goes up and a local counter that can be reset to 0
* updated fork choice rule in order to include uncles in the block reward
* an event system
1 - https://medium.com/tezos/a-few-directions-to-improve-tezos-15359c79ec0f