partially corrected interface code