finished type checking don't think I'll get to much else...