diff --git a/Rakefile b/Rakefile
index 2b1a1cdb8e7a80c2be37a660c63bc38223d08a5c..25d859ac7f0ff31fabe657935bfc4e2d38d8cce2 100644
--- a/Rakefile
+++ b/Rakefile
@@ -90,6 +90,37 @@ task :ops_dump, [:vops, :appbase] do |t, args|
   puts op_names.compact.sort
 end
 
+desc 'Dump all dgpo keys.'
+task :dgpo_dump do
+  file_name = '_data/objects/dgpo.yml'
+  yaml = YAML.load_file(file_name)
+  api = Hive::DatabaseApi.new
+  all_keys = api.get_dynamic_global_properties.result.keys - ['id']
+  known_keys = []
+  removed_keys = []
+  unknown_keys = []
+  known_undocumented_keys = []
+  
+  yaml[0]['fields'].map do |field|
+    field_name = field['name']
+    
+    known_keys << field_name if all_keys.include? field_name
+    removed_keys << field_name if !!field['removed']
+    known_undocumented_keys << field_name if all_keys.include?(field_name) && field['purpose'].nil?
+  end
+  
+  unknown_keys = all_keys - known_keys
+  
+  puts "Known keys:"
+  puts known_keys.map{|k| "\t#{k}"}
+  puts "Removed keys:"
+  puts removed_keys.map{|k| "\t#{k}"}
+  puts "Unknown keys:"
+  puts unknown_keys.map{|k| "\t#{k}"}
+  puts "Known, undocumented keys:"
+  puts known_undocumented_keys.map{|k| "\t#{k}"}
+end
+
 namespace :test do
   KNOWN_APIS = %i(
     account_by_key_api account_history_api block_api condenser_api 
diff --git a/_data/objects/dgpo.yml b/_data/objects/dgpo.yml
index 70ee4757e6166f29b03c77f1aa3b145269818156..fa0cb0f84e68cacf4464be49d1154f854cad10d5 100644
--- a/_data/objects/dgpo.yml
+++ b/_data/objects/dgpo.yml
@@ -141,7 +141,8 @@
         - "`264241152000000000000`"
     - name: init_hbd_supply
       since: HF19
-      # purpose: Originally called `virtual_hbd_supply`, ... TODO
+      purpose: |
+        Initial amount of HBD issued, originally called `virtual_hbd_supply`.
       examples:
         - "`0.000 HBD`"
     - name: required_actions_partition_percent
@@ -236,6 +237,8 @@
         - <a href="https://github.com/steemit/steem/issues/3344">#3344</a>
     - name: pending_rewarded_vesting_shares
       since: HF17
+      purpose: |
+        Amount of VESTS produced from HIVE held in pending reward vested fund.
       examples:
         - "`379159224.860656 VESTS`"
       links:
@@ -243,6 +246,8 @@
         - <a href="https://github.com/steemit/steem/issues/3346">#3346</a>
     - name: pending_rewarded_vesting_hive
       since: HF17
+      purpose: |
+        Pool of HIVE tokens for pending (vested) rewards.
       examples:
         - "`185294.019 HIVE`"
       links:
@@ -269,3 +274,14 @@
       links:
         - <a href="https://github.com/steemit/steem/issues/1252">#1252</a>
         - <a href="https://github.com/steemit/steem/issues/1411">#1411</a>
+    - name: next_daily_maintenance_time
+      since: HF24
+      purpose: |
+        Schedule to convert HIVE to HBD in the treasury account.
+      examples:
+        - "`2018-07-14T01:19:51`"
+      links:
+        - <a href="https://gitlab.syncad.com/hive/hive/-/releases/v1.24.2">v1.24.2</a>
+        - <a href="https://gitlab.syncad.com/hive/hive/-/commit/96254ae57c9e92cdf066e4ccd5deeed4ec9d964f">96254ae</a>
+        - <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}"><code>sps_fund</code></a>
+        - <a href="{{ '/apidefinitions/#broadcast_ops_sps_convert' | relative_url }}"><code>sps_convert</code></a>