updates and new tests