Break it up so that we can debug it