úÎ*Y(/      Safe-Inferred!"&'(+2346=HJKM7Checks if the former subset included in the latter one.&First elements of two lists are equal?Delete element from type listType level list lengthXCalculates to Nat kinded type describing the index of first argument in second argument LCalculates to 'True if first type argument contained in second list element       Safe-Inferred!"&'(+2346=HJKM     Safe-Inferred!"&'(+2346=HJKMOTakes subset of some hset, including subset of same elements in different order[let x = (HSCons "hello" $ HSCons 1234 $ HSCons 12.123 HSNil) :: HSet '[String, Int, Double] subHSet x :: HSet '[Double, Int]'HSCons (12.123) (HSCons (1234) (HSNil))#subHSet x :: HSet '[String, Double]*HSCons ("hello") (HSCons (12.123) (HSNil)) subHSet x :: HSet '[Int, String](HSCons (1234) (HSCons ("hello") (HSNil))"Enables deriving of the fact that e is contained within els and it's safe to say that * can be performed on this particular pair. Typeclass for sets and elements.Gets any data from HSet for youPHeterogeneous set (list) of elements with unique types. Useful with MonadReader.8let x = HSCons (10 :: Int) $ HSCons (20 :: Double) HSNilx#HSCons (10) (HSCons (20.0) (HSNil)) hget x :: Int10hget x :: Double20.0 Note that o takes specific element from list of uniquely typed elements depending on what type is required to be returned.+Removes element from HSet of specified type@let x = (HSCons "sdf" $ HSCons 123 HSNil) :: HSet '[String, Int]hdelete (Proxy :: Proxy Int) xHSCons ("sdf") (HSNil)!hdelete (Proxy :: Proxy String) xHSCons (123) (HSNil)Like  but with proxy for convenienceXlet x = (HSCons "hello" $ HSCons 123 $ HSCons 345 HSNil) :: HSet '[String, Int, Integer]hnarrow (Proxy :: Proxy '[]) xHSNil$hnarrow (Proxy :: Proxy '[String]) xHSCons ("hello") (HSNil)*hnarrow (Proxy :: Proxy '[Int, Integer]) x#HSCons (123) (HSCons (345) (HSNil))*hnarrow (Proxy :: Proxy '[Integer, Int]) x#HSCons (345) (HSCons (123) (HSNil))]let y = HSCons (Labeled 10 :: Labeled "x" Int) $ HSCons (Labeled 20 :: Labeled "y" Int) HSNilyMHSCons (Labeled {unLabeled = 10}) (HSCons (Labeled {unLabeled = 20}) (HSNil)))hgetLabeled (Proxy :: Proxy "x") y :: Int10)hgetLabeled (Proxy :: Proxy "y") y :: Int20 !"#$%&'()  !"#$%&'()*      !"#$%&'()*+,- hset-1.1.0Data.HSet.TypeLevelData.HSet.Labeled Data.HSetHSubsetAnd FirstContainsFirstEQDeleteAppendLengthTEqIndexElemNatSZLabeled unLabeledmkLabel SubHSetableSubHSetsubHSetHGetableHGethgetHSetHSConsHSNilhaskhdeletehnarrow hgetLabeled haskLabeled$fSubHSetels:True$fSubHSetels:False$fSubHSetels[]eq $fHGet:eS $fHGet:eZ $fOrdHSet $fOrdHSet0$fEqHSet $fEqHSet0 $fShowHSet $fShowHSet0