add interfaces support