The backend for our project will take care of generating trades that can be filled by anyone as long as they have enough funds to pay the established price. When the user gets registered, they'll deploy an Escrow contract which will be used by our main DAX contract. So let's start by setting up the requirements and the contract structure before starting to fill all the functions to practice the system to improve, developer's efficiency that we studied in Chapter 4, Mastering Smart Contracts.
Start by defining the functions that we'll need in a big comment at the beginning of the file:
// Functions that we need:
/*
1. Constructor to setup the owner
2. Fallback non-payable function to reject ETH from direct transfers since we only want people to use the functions designed to trade a specific pair
3. Function to extract tokens...