leave out if and add the ability to handle basic function