{-# LANGUAGE ExplicitNamespaces #-} {-# LANGUAGE PatternSynonyms #-} import Data.Type.Equality ( (~) ) import Data.Maybe ( Just ) import Data.Maybe ( Some ) import Data.Maybe ( Maybe(Some) ) import Data.Maybe ( Maybe(Just,Some,Mk) ) import Data.List ( type (!!) ) import Data.Type.Equality ( pattern (:~:) ) import Data.Maybe ( pattern Just ) import Data.Maybe ( pattern Some ) import Data.Maybe ( pattern Maybe )