Done. beginning cleanup/optimization