diff --git a/Frameworks/Bindings.xcframework/Info.plist b/Frameworks/Bindings.xcframework/Info.plist
index 5da456bbdabbf3d610daca4ce17734b523413a53..3c96df61083ca794226526858401b4539235d6ba 100644
--- a/Frameworks/Bindings.xcframework/Info.plist
+++ b/Frameworks/Bindings.xcframework/Info.plist
@@ -6,30 +6,30 @@
 	<array>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64</string>
+			<string>ios-arm64_x86_64-simulator</string>
 			<key>LibraryPath</key>
 			<string>Bindings.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
 				<string>arm64</string>
+				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
+			<key>SupportedPlatformVariant</key>
+			<string>simulator</string>
 		</dict>
 		<dict>
 			<key>LibraryIdentifier</key>
-			<string>ios-arm64_x86_64-simulator</string>
+			<string>ios-arm64</string>
 			<key>LibraryPath</key>
 			<string>Bindings.framework</string>
 			<key>SupportedArchitectures</key>
 			<array>
 				<string>arm64</string>
-				<string>x86_64</string>
 			</array>
 			<key>SupportedPlatform</key>
 			<string>ios</string>
-			<key>SupportedPlatformVariant</key>
-			<string>simulator</string>
 		</dict>
 	</array>
 	<key>CFBundlePackageType</key>
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings
index 0e927ef84f8d1620e42274d113420c0a284f7d34..ea3fe73b7ab959b2933ec1c6427e85451abf6bfb 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings
index 0e927ef84f8d1620e42274d113420c0a284f7d34..ea3fe73b7ab959b2933ec1c6427e85451abf6bfb 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings
index 0e927ef84f8d1620e42274d113420c0a284f7d34..ea3fe73b7ab959b2933ec1c6427e85451abf6bfb 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings
index e150b96d08dfe04c943e03f8402ae6467deab42a..5bd8d9004a85e2bad380d62bb60bb0d2200c078c 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings
index e150b96d08dfe04c943e03f8402ae6467deab42a..5bd8d9004a85e2bad380d62bb60bb0d2200c078c 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings
index e150b96d08dfe04c943e03f8402ae6467deab42a..5bd8d9004a85e2bad380d62bb60bb0d2200c078c 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
index 92120af1f87a7254aafedb8cf8a21517c2a35126..544b9065fbd817b0d676a9de94dfdcd23b916a36 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
@@ -404,6 +404,8 @@ Parameters:
  * GetID returns the ID for this Cmix in the cmixTracker.
  */
 - (long)getID;
+// skipped method Cmix.GetNodeRegistrationStatus with unsupported parameter or return types
+
 /**
  * GetReceptionRegistrationValidationSignature returns the signature provided by
 the xx network.
@@ -436,9 +438,11 @@ messages.
 /**
  * NetworkFollowerStatus gets the state of the network follower. It returns a
 status with the following values:
- Stopped  - 0
- Running  - 2000
- Stopping - 3000
+
+Status:
+ - Stopped  - 0
+ - Running  - 2000
+ - Stopping - 3000
  */
 - (long)networkFollowerStatus;
 /**
@@ -1637,8 +1641,8 @@ registered facts into store.
 Parameters:
  - e2eID - e2e object ID in the tracker
  - follower - network follower func wrapped in UdNetworkStatus
- - emailFactJson - a JSON marshalled email fact.Fact
- - phoneFactJson - a JSON marshalled phone fact.Fact
+ - emailFactJson - nullable JSON marshalled email fact.Fact
+ - phoneFactJson - nullable JSON marshalled phone fact.Fact
  */
 FOUNDATION_EXPORT BindingsUserDiscovery* _Nullable BindingsNewUdManagerFromBackup(long e2eID, id<BindingsUdNetworkStatus> _Nullable follower, NSData* _Nullable emailFactJson, NSData* _Nullable phoneFactJson, NSError* _Nullable* _Nullable error);
 
diff --git a/README.md b/README.md
index eb75d9ac4e8907c0bde126715dc63b70a7970f0f..d1a9bb7fe75a6205124bbdba08f8c82abf58dc08 100644
--- a/README.md
+++ b/README.md
@@ -47,15 +47,13 @@ Check out included example iOS application for the `PasswordStorage` implementat
 
 Start network follower:
 
-```
-let cMix: CMix = ...
+```swift
 try cMix.startNetworkFollower(timeoutMS: 10_000)
 ```
 
 Wait until connected:
 
-```
-let cMix: CMix = ...
+```swift
 let isNetworkHealthy = try cMix.waitForNetwork(timeoutMS: 30_000)
 ```
 
@@ -64,7 +62,6 @@ let isNetworkHealthy = try cMix.waitForNetwork(timeoutMS: 30_000)
 Use the cMix to make a new reception identity:
 
 ```swift
-let cMix: CMix = ...
 let myIdentity = try cMix.makeReceptionIdentity()
 ```
 
diff --git a/Sources/ElixxirDAppsSDK/Functors/NewUdManagerFromBackup.swift b/Sources/ElixxirDAppsSDK/Functors/NewUdManagerFromBackup.swift
index a167a0846fe571c81ce60bcd8d7a033c81e9f306..8c57aa35d51eef3664db8ea1f3974d536d5a9c99 100644
--- a/Sources/ElixxirDAppsSDK/Functors/NewUdManagerFromBackup.swift
+++ b/Sources/ElixxirDAppsSDK/Functors/NewUdManagerFromBackup.swift
@@ -2,13 +2,13 @@ import Bindings
 import XCTestDynamicOverlay
 
 public struct NewUdManagerFromBackup {
-  public var run: (Int, UdNetworkStatus, Fact, Fact) throws -> UserDiscovery
+  public var run: (Int, UdNetworkStatus, Fact?, Fact?) throws -> UserDiscovery
 
   public func callAsFunction(
     e2eId: Int,
     follower: UdNetworkStatus,
-    email: Fact,
-    phone: Fact
+    email: Fact?,
+    phone: Fact?
   ) throws -> UserDiscovery {
     try run(e2eId, follower, email, phone)
   }
@@ -22,8 +22,8 @@ extension NewUdManagerFromBackup {
     let bindingsUD = BindingsNewUdManagerFromBackup(
       e2eId,
       follower.makeBindingsUdNetworkStatus(),
-      try email.encode(),
-      try phone.encode(),
+      try email?.encode(),
+      try phone?.encode(),
       &error
     )
     if let error = error {