Moving things around to make sense, code is still broken