make it all work together