interface nearly done