finished everything except my hash