fleshed out easier functions, skeleton code