initial checkin: interfaces