+:: MTaskShareType = MTaskWithShare String | MTaskLens String
+:: MTaskShare =
+ {withTask :: [String]
+ ,withDevice :: [String]
+ ,identifier :: Int
+ ,realShare :: MTaskShareType
+ ,value :: BCValue
+ }
+
+manageShares :: [MTaskShare] -> Task ()
+
+makeShare :: String String Int BCValue -> Task MTaskShare
+
+updateShare :: Int BCValue -> Task ()