initial work done but somethings messed up. Work on it tomorrow.