Introduce simulator interface