abstract views