(Map Set : Type) →
  (Unit → Map × Set) →
    (Map → ShareCommon.Object → Option ShareCommon.Object) →
      (Map → ShareCommon.Object → ShareCommon.Object → Map) →
        (Set → ShareCommon.Object → Option ShareCommon.Object) →
          (Set → ShareCommon.Object → Set) → ShareCommon.StateFactoryImpl