interface implementation questions