extend to BlockContainer