major update + yarden's type checker