[WIP] some interfaces