function calculateProfileRankings() {
            let userProfiles = Array.from(SA.projects.network.globals.memory.maps.USER_PROFILES_BY_ID)

            userProfiles.sort((p1, p2) => p2[1].balance - p1[1].balance)

            tempBalanceRanking.clear()
            const rankingTable = userProfiles.map((up, index) => {
                // add ranking to existing item
                SA.projects.network.globals.memory.maps.USER_PROFILES_BY_ID.get(up[1].id).ranking = index + 1
                // Build temporary table which will retain rankings during balance reloads. This avoids users to drop to end of queue when connecting during balance loads.
                tempBalanceRanking.set(up[1].id, {ranking: index + 1, balance: up[1].balance})
                // return user friendly item for console table output
                return {
                    userProfile: up[1].name,
                    balance: SA.projects.governance.utilities.balances.toSABalanceString(up[1].balance),
                    ranking: index + 1
                }
            })

            if (thisObject.loadAllUserProfileBalances === true) {
                SA.logger.info('User Profiles ranking table calculated based on latest User Profile Balances: ')
                SA.logger.info('')
                console.table(rankingTable)
                SA.logger.info('')
            }
        }
Transfer all profiles to the ranking array.