interface lib