+memoryShare s d = sdsFocus s $ memoryStore s $ Just d
+
+deviceStoreNP :: Shared [MTaskDevice]
+deviceStoreNP = sdsFocus Nothing $ deviceStore
+
+deviceStore :: RWShared (Maybe Int) [MTaskDevice] [MTaskDevice]
+deviceStore = SDSSource {SDSSource
+ | name = "deviceStore"
+ , read = \_->read realDeviceStore
+ , write= \p w->appFst ((<$) (lens p)) o write w realDeviceStore
+ }