still working on inner prod