\begin{code}
{-# OPTIONS --safe --cubical #-}
module Container where
open import Prelude
Container : (s p : Level) → Type (ℓsuc (s ℓ⊔ p))
Container s p = Σ[ Shape ⦂ Type s ] (Shape → Type p)
⟦_⟧ : ∀ {s p ℓ} → Container s p → Set ℓ → Set (s ℓ⊔ p ℓ⊔ ℓ)
\end{code}
%<*container-interp>
\begin{code}
⟦ S , P ⟧ X = Σ[ s ⦂ S ] (P s → X)
\end{code}
%</container-interp>