diff --git a/beembase/objects.py b/beembase/objects.py
index 0b712c1df26e4e07269be646431902ef83ae6055..2131fef85f4682cea5ec310e66a27ddd29bb9376 100644
--- a/beembase/objects.py
+++ b/beembase/objects.py
@@ -358,10 +358,12 @@ class UpdateProposalExtensions(Static_variant):
     """
     def __init__(self, o):
         if isinstance(o, dict) and 'type' in o and 'value' in o:
-          if o['type'] == "update_proposal_end_date":
-              type_id = 1
-          else:
-              type_id = ~0
+            if o['type'] == "update_proposal_end_date":
+                type_id = 1
+            else:
+                type_id = ~0
+        else:
+            type_id, data = o        
 
         if type_id == 1:
             data = (UpdateProposalEndDate(o['value']))