built an abstract panel