refListMaybeSource :: MonadFixedReference m r => r [a] > m (Maybe a) 

stateListMaybeSource :: Monad m => StateMonad m [a] (Maybe a) 

makeInputMaybeSource :: MonadStandardReference m r => [a] > m (m (Maybe a)) 

runWithListMaybeSource :: Monad m => [a] > (StateMonad m [a] (Maybe a) > StateMonad m [a] b) > m b 

type StackedListStateMonad m a = StackedMonad (StateMonad m [a]) 

runMonadOrWithList :: Monad m => [a] > (StackedListStateMonad m a Maybe a > StackedListStateMonad m a Maybe b) > m (Maybe b) 

runMonadPlusWithList :: Monad m => [a] > (StackedListStateMonad m a [] a > StackedListStateMonad m a [] b) > m [b] 

accumulateMaybeSource :: Monad m => m (Maybe a) > m [a] 