added core interfaces