rename as to stop confusion and add in interfaces