1function(chainUrl)23 local4 state = cql.chain(chainUrl).latest,5 locked_balances = state.Balances.Locks._preloadKeys,6 accountsRaw = state.System.Account._preloadKeys,7 stakers = state.AppPromotion.Staked._preloadKeys,8 unstakes = state.AppPromotion.PendingUnstake._preloadKeys,9 locks = [10 { [k]: std.filter(function(l) l.id == '0x6170707374616b65', locked_balances[k]) }11 for k in std.objectFields(locked_balances)12 ],13 unstakersData = [14 { [pair[0]]: { block: block, value: pair[1] } }1516 for block in std.objectFields(unstakes)17 for pair in unstakes[block]18 ],19 non_empty_locks = std.prune(locks)20 ;2122 std.map(function(a) {23 address: std.objectFields(a)[0],24 balance: a[std.objectFields(a)[0]][0].amount,25 account: accountsRaw[std.objectFields(a)[0]].data,26 locks: locked_balances[std.objectFields(a)[0]],27 stakes: if std.objectHas(stakers, std.objectFields(a)[0]) then stakers[std.objectFields(a)[0]] else null,28 unstakes: std.filterMap(function(b) std.objectHas(b, std.objectFields(a)[0]), function(c) std.objectValues(c)[0], unstakersData),29 }, non_empty_locks)