fixing method visibility and removing unnecessary interface