corrected interfaces to make things work better