framework classes