wrapped in container class