implementation done, starting testing