add interface defenitions