Contains all functions required