For an application to be considered a Dapp or decentralized application it must meet the following criteria (1) Application must be completely open-source, it must operate autonomously, and with no entity controlling the majority of its tokens. The application may adapt its protocol in response to proposed improvements and market feedback, but all changes must be decided by the consensus of its users. (2) Application data and records of operation must be cryptographically stored in a public, decentralized blockchain in order to avoid any central points of failure. (3) The application must use a cryptographic token (bitcoin or a token native to its system) which is necessary for access to the application, and any contribution of value from miners/farmers should be rewarded with the application’s tokens. (4) The application must generate tokens according to a standard cryptographic algorithm acting as a proof of the value nodes are contributing to the application (Bitcoin uses the Proof of Work Algorithm).