Core interface classes.