everything is an interface