some changes to method signatures