working through value interface