slice responsibility off of interface and delegate to instance method