9 Calculate New Allocations

  • add 1,000 to all with at least 0.00001 in queries_proportion_per_indexer from rewards_info
  • add 100 at a time to the best one
  • re-calculate proportions and keep adding 100 at a time
  • when a single one reaches 10% of total, stop adding to that one
  • add to others using the same approach until out of available tokens

First, let’s set all new allocations to 0 as a start:

synced_subgraphs %<>% mutate(new_allocation = 0)

Next, let’s establish a maximum allocation size as 10% of our total stake. This helps spread our allocations across a larger number of subgraphs and avoid our APR from fluctuating as much after we have set the allocations:

max_allocation = available_tokens$total_stake * 0.1
## [1] 59317.47

Before the next step, let’s make sure to fill in NAs with 0’s to avoid issues when calculating the new allocations:

synced_subgraphs = synced_subgraphs %>%
  replace_na(list(
    queries_per_indexer = 0,
    unique_indexers = 0,
    signalled_tokens = 0,
    total_allocated_tokens = 0,
    rewards_proportion = 0,
    sum_queries = 0
  ))

Now let’s start allocating some tokens. We will

synced_subgraphs %<>% 
  # for cases with more than 2 signal but less than 1000 in staked tokens, add a 1,000 allocation
  mutate(new_allocation = case_when( signalled_tokens > 3 && total_allocated_tokens < 1000 ~ 1000,
                                     # for cases with more than 50,000 queries per indexer, add 1000 allocation
                                     queries_per_indexer > 50000 ~ 1000,
                                      # for cases with less than 3 signal (but more than 0.5) and less than 1000 in staked tokens, add a 100 allocation
                                     (signalled_tokens < 3 | signalled_tokens > 0.5) && total_allocated_tokens < 1000 ~ 100,
                                     # everything else remains with the old new_allocation value
                                     TRUE ~ new_allocation) )
# calculate remaining tokens
remaining_tokens = available_tokens$available_stake - sum(synced_subgraphs$new_allocation,na.rm=T)

# now sort by best deals, and increment the top one by 100
synced_subgraphs %<>% arrange(desc(rewards_proportion))


# calculate new allocations - actual calculation -----------------------------------------------

data = synced_subgraphs
# Sort the data by rewards_proportion in descending order, but keep all rows
data = data %>% 
  arrange(desc(rewards_proportion)) %>% 
  select(deployment, signalled_tokens, total_allocated_tokens, rewards_proportion, queries_per_indexer, new_allocation)

# Calculate initial remaining tokens
remaining_tokens = available_tokens$available_stake - sum(data$new_allocation, na.rm=TRUE)

# Ensure remaining_tokens is not negative
remaining_tokens = max(remaining_tokens, 0)

# Function to calculate potential rewards_proportion
calculate_rewards_proportion = function(row, additional_allocation) {
  (row$signalled_tokens) / (row$total_allocated_tokens + row$new_allocation + additional_allocation)
}

# Check if data is empty
if (nrow(data) == 0) {
  print("Error: data is empty. Skipping allocation loop.")
} else {
  while (remaining_tokens >= 100) {
    # Print remaining tokens at the start of each iteration
    # print(paste("Remaining tokens:", remaining_tokens))
    
    # Calculate potential rewards_proportion for each row if we add 100 tokens
    data$potential_rewards = mapply(calculate_rewards_proportion, split(data, 1:nrow(data)), 100)
    
    # Find rows that haven't reached max_allocation
    eligible_rows = which(data$new_allocation + 100 <= max_allocation)
    
    # If no eligible rows, break the loop
    if (length(eligible_rows) == 0) {
      print("No eligible rows for allocation. Breaking loop.")
      break
    }
    
    # Find the best eligible row
    best_row = eligible_rows[which.max(data$potential_rewards[eligible_rows])]
    
    # Allocate 100 tokens to the best row
    data$new_allocation[best_row] = data$new_allocation[best_row] + 100
    data$total_allocated_tokens[best_row] = data$total_allocated_tokens[best_row] + 100
    remaining_tokens = remaining_tokens - 100
    
    # Recalculate rewards_proportion for the updated row
    data$rewards_proportion[best_row] = data$signalled_tokens[best_row] / data$total_allocated_tokens[best_row]
    
    # Print information about the allocation
    # print(paste("Allocated 100 tokens to row", best_row, ". New allocation:", data$new_allocation[best_row]))
  }
}

# Print final allocation summary
print(paste("Total rows:", nrow(data)))
## [1] "Total rows: 259"
print(paste("Rows with non-zero allocation:", sum(data$new_allocation > 0)))
## [1] "Rows with non-zero allocation: 173"
print(paste("Total allocated:", sum(data$new_allocation)))
## [1] "Total allocated: 563900"
print(paste("Remaining tokens:", remaining_tokens))
## [1] "Remaining tokens: 74.7047393597895"
# Ensure that synced_subgraphs is updated with the new allocations
synced_subgraphs %<>% 
  left_join(data %>% select(deployment, new_allocation), by = "deployment") %>%
  mutate(new_allocation = coalesce(new_allocation.y, new_allocation.x)) %>%
  select(-new_allocation.x, -new_allocation.y)
# Final sorted dataset
final_allocations_data = data %>% arrange(desc(new_allocation)) %>% filter(new_allocation > 0)
# show final data
print(final_allocations_data)
##                                         deployment signalled_tokens total_allocated_tokens rewards_proportion
## 1   Qmduy6o7VkWqJRgBqHUVVuPnowT6kAqWJmQWo5WecgKsV6      3432.595602               967210.0        0.003548966
## 2   QmXQw8YADkc9LtcYxBCZq1NHJFNt6whZZn7Q45XEbsTttD      2911.511003               823947.0        0.003533614
## 3   QmdGmCh3dL4McHWLzkoLeoHUZZP9c6WcJpwhf7FRCoFxqN      2987.317418               852986.0        0.003502188
## 4   QmYodpkEm88nPwAi1QBnS8UVnidGGQTP3cmpB4Fp1y4Aex      3024.780525               875612.0        0.003454476
## 5   QmW8NKJZoYsu8v5KuknpSHdANJ6e97fWy1S9D5qMTPiP5q      1980.071765               569311.0        0.003478014
## 6   QmVHVUTkiTEdF7SijmwvjaGYcPYgwwBBnPd6f177bqFuhd       558.230664               146115.0        0.003820488
## 7   QmXtiD3cPJ51x4cyzCy51Cw8f8V64AwoejRWZyR8EtaGyo      1428.978583               405696.0        0.003522289
## 8   Qme1543TivTdAobAPuqaRVBqkU4aaxV5v9rzws9qHBUErt      3441.026189              1006763.9        0.003417908
## 9   QmQJDsmwXbFYmS2z9kqeJq4xdKzXT9DX9ZijBiR9Pd2nDA       994.635478               278481.0        0.003571646
## 10  QmcaswVo8QTsnAFG29wBEGfxEyfPBmazTxxW8XvczPTGsR      4910.217365              1445230.0        0.003397534
## 11  QmW4qESMa8dD6KBimm5jgTdNxqYciyNxkXN9G6r1xzPhEc       297.000000                70914.0        0.004188172
## 12  QmQFCuG8KpTCZfCP5ayGWQWFeQH5gDSnZsUxs8aevhEmWZ       100.000000                17619.0        0.005675691
## 13  QmYxJsyzaZPbwmukAzdiQyLLagxdB8RW7kK3tLbCRMAx7y       712.261660               201256.0        0.003539083
## 14  QmZisJKkgZji3d4Qd5XcNBBNh7ArxnNGWkJ4cbikvBFdL3       495.000000               137772.0        0.003592893
## 15  QmcK5HmdqJjhJh18g8cTog2FYP7497T2nz25ESaWdyXk1Z      2971.055532               875499.8        0.003393554
## 16  QmVeh3KUMBRNTTTZDipWFEdPrxnnnHz3yzyugRvJJwzXrY        97.029900                19500.0        0.004975892
## 17  QmWRpp5fQJLvq83ziAid4pKo6DKUWdFvF5F9o9EZnKuPvP      1461.556940               426155.0        0.003429637
## 18  QmbcPkYbBDageNbGCvzGkAggLrmRygabbTKbbvknkoTeuW       396.000048               109051.0        0.003631329
## 19  Qmb1kpm8RzXRQUD8gBHSuPqd8HAkcQds577cauahwejDp9        52.663057                 7300.0        0.007214117
## 20  QmQsTaSDMfskRNLcWEzaxufUj1wTxL3MR9af6jtomsQMvr        72.289406                13300.0        0.005435294
## 21  QmV5UryFDWzTjugAMH4W6qdZwZeFvrggvB5vMPbYU1x8Xb       104.364025                22822.0        0.004572957
## 22  QmRuPq9vmTwDPEQvUaoMGvB3zEPc5S3J1wuJPoW5WMTuVL       507.281153               143024.0        0.003546825
## 23  QmRg3LG1pCZB9xWFS6z2iAwDwgSRta7JjCFTfdyVvHg9w1       147.675671                36083.0        0.004092666
## 24  QmaE9BZUMPpc9mcJPVbG9xnz6xWKDVKJeUyndcLWCi1nKr        82.872677                16800.0        0.004932897
## 25  QmXvdb33USYAq4XfPyAYZXDMHH4DrUtdfeGUjJejo4TEL7       618.507091               177095.0        0.003492516
## 26  QmaoWjQg4gFLV6LH3R9Db7cuppGMNjB4MG6V2gXzqfJWj7       135.042822                34060.0        0.003964851
## 27  QmbrFgsMRiVSFLdpT5NveyioE1L6P5RCgy5eNYQvufhuLp        39.813206                 5900.0        0.006748001
## 28  QmSDPnHzyW8yfnuhB423ssVY5r4bQrr5C1rXT8qMroNgmv      1641.189683               483365.0        0.003395342
## 29  QmXvh2JpDWbxC3hbhzU1UMYYwWCozQobhvpaTPq5HongSP        68.919595                15275.0        0.004511921
## 30  QmVFGoBvTa2YWE5QCDXFg1EeaYHKvds9voYQGd2PWRPdrZ      4901.496016              1455105.0        0.003368483
## 31  QmfW5ePHUCrQ51fCcbJUvtKd7NRPeHei16cR8m1taHku8U        49.500000                 9900.0        0.005000000
## 32  QmZzoueJuv3dWLFgGSCoK5A1UomR61BhhhbtD9nPT6i2cw        49.500000                 9900.0        0.005000000
## 33  QmVgFruqJqEUpY4FaDt39vrWjNGN9YUbdnzkr81izro9DM       652.251226               189520.0        0.003441596
## 34  Qmck1XDhZcCYCsdKYXy2DS7CS3kQfEHT67NVan5cfCmLC1        27.432854                 3600.0        0.007620237
## 35  QmQTGTovKTt3pni5iRyeWKYkUM2sttEahfDd5yhwqqiBkW       307.647585                87342.0        0.003522333
## 36  QmZPVq8VQWGp6K8WMmExuLEEnekzhG39tJttymoY4CZoAe       117.299100                31346.0        0.003742076
## 37  QmfQWmNKDBuZ9xrhk9oe4X9dB8svZSdJAeQEdva4KbaK25      1676.621257               496120.0        0.003379467
## 38  QmZ9woCuBdvfqn8MSQSe22ivuYFXw1EW5EgSeVd2tETTmy        97.034200                25613.0        0.003788475
## 39  QmeWYQm1r39iZdKTzJYzNYHKmfNSWYEdq8cprPpfz44n88        17.417662                 2100.0        0.008294125
## 40  QmWGUDcQG1e8bjp9LRcyWCo4xfWcVCdgApi59sY6rgdRkS        23.197445                 4000.0        0.005799361
## 41  Qmba5sBE59n6GatmbyBQPHEt6NhB7fmRPVEEzSLQeaaVoC       591.239722               173241.0        0.003412816
## 42  QmZtTFVqw46STD3uwHLD1gQWwn11NS7NaSw1tzZfKCgewG      1982.340978               588048.0        0.003371053
## 43  QmRAbgoZ2mBpxqj4Z32KFaso8rsDhdm8KcwEQhWMzD8bTN        13.878682                 2101.0        0.006605751
## 44  QmPiXvLKgVwTngiFGfi6p4sA75WYsizgbbdNnGw6nyhNMX        58.806000                15400.0        0.003818571
## 45  QmcN5d7N4Xe6tL9pW9U71jzo9sPSuioaJeCqbbAC1PhWQD        20.207914                 4000.0        0.005051979
## 46  QmWZrJghWFFqFaYteYmoFoBaMeancixDhU1qe2ZpSQ9Hir        12.545925                 1900.0        0.006603118
## 47  Qma9bvmT39fCkG5woFkrXLebPUbbXGSBcXQD9Z3vArJyso        11.897579                 1800.0        0.006609766
## 48  QmSxmGgUGwYskjkbzQZEjLC8jHbd1hjdcV8ifAiQRtDwZL        11.898762                 1801.0        0.006606753
## 49  Qmc1mFtNdvykyysPZd8sAMz3tmvyeRWMDxpmggukTx7g1x        11.892538                 1801.0        0.006603297
## 50  Qmap5Ycg96Cb4wikiraf4hQTRMRi2dERKVff9RPruaKnrd        11.892536                 1801.0        0.006603296
## 51  QmPjeesdXSYBstNqJMDjqkpZP1CLtotR2y7Lom75JhBuG9        24.837083                 5700.0        0.004357383
## 52  QmVf3FcBasTsmATxekgL1QQKsK72CR9TG8zHwS1tJ5Tx4p        10.902607                 1601.0        0.006809873
## 53  QmcQe363orcX5u5DtLvjGrjwfCR89vfrA9YLjHWZc3zutD        10.638188                 1600.0        0.006648868
## 54  QmdVmkErFM4RxYYTeoq786cnYkR41FmjPTpA7QzD8kfhA2        17.382444                 3600.0        0.004828457
## 55  QmTScm43kN2xfdKK9h7nWs3a7c7ypjPjtKJe1NsAsCfnCL         9.850500                 1500.0        0.006567000
## 56  QmVEWdQQTJNoURcdefRQm8JEZo7TFtLA1dwkMRrBs2585Z        10.164842                 1501.0        0.006772047
## 57  QmZ119nJYGVhsSSP8cCeBY1YpwoQCKBFhfvoxAy7fWs3Qi        65.347475                18302.0        0.003570510
## 58  QmTsgX4C2sAmvDg6C3pKVxKpHGkF74vrNGJqGCCZ3qJP2f         3.770774                  100.0        0.037707739
## 59  QmeHZcGmj7wrJMHRrPVDGiVaprs7t21n1jjeUHhPUeMRcA         2.161817                    0.0                Inf
## 60  QmbGxMtiEqy3j6DaPDABApKm9jKQZJQ6oNkbz1UtTDJxmR         2.467061                    0.0                Inf
## 61  QmcQSBBPpJgDcYrKyGy6oGP9BN7FcczRv32t1cfKbtWuRU       394.340542               117429.0        0.003358119
## 62  Qme5nGiCCDJcDtA5xoJ4iPAtjQgBfLekqRvxXesKCiH8XX      1577.792110               470475.0        0.003353615
## 63  QmSMf99YyUBJuSf2JroPDHDpNuR54esqq3emudg9vaoWKP      3231.514714               972059.7        0.003324399
## 64  QmYAafEPam85rVLcDRZqGXUmwrfj34GfZ91WK751LsphrC      3174.168800               955039.0        0.003323601
## 65  QmYNYWiVGHkRFjYMULxyECVgsaYfXDibEhjBx9sWTtsz9c      2471.881400               748549.0        0.003302231
## 66  QmQ6u3oHrvuMD2CcrWe2LuzagbFbxwqWfSWCvAuCnhgeLM      1211.346194               368698.0        0.003285470
## 67  QmUS8ekFtGby8TQhxt7i3RoQySb1QVtKW4VBU2CG2pS9Eh       909.267469               279771.0        0.003250042
## 68  QmcMk21Jdeng7SWv8yqhskhKbykqgH12vE64cnNhzSbXJ8      2044.087994               634392.5        0.003222119
## 69  QmQamfGnZ1bwt3Y1EzpSfxSG1HsdwpJfgpJGqdMMoPheFz      3182.515247              1017346.0        0.003128253
## 70  QmS1nPRvYghS9UBrqFWP3W7XNnrrJCk9PR9CwiP82fiUGY      3049.699219               985114.0        0.003095783
## 71  QmdorsAVanFXUyFQsfKaTJ6YykhH5PpJc9TG4mSBppPfsU      8300.725007              2682944.0        0.003093887
## 72  QmbnwSqo4RSDUuP7Kf5WAtj4DLCWFDhyhTRPM2drthaGVQ      4913.554881              1606303.0        0.003058922
## 73  Qmdv8zRyxPC7cmi5fpTdcViptimbCwaHVdb71sXPdWzUhL       768.657726               255529.0        0.003008104
## 74  Qmc4J3epkBZggHMA3dTSX5TPi4Eq2bn4JtZM17VDihMQiV      3237.492109              1083357.0        0.002988389
## 75  QmWXhLkz6fRJwLyFmgBKVu2NyMD6MqtGhcrt8bNcm1xpuU      6637.414759              2226502.4        0.002981095
## 76  Qmb27RY3RqP98UMKbTgScf6F7hhokfMuS9fV7VAtPiZHwF      8605.676263              2952381.4        0.002914825
## 77  QmQoJMZT4bLLUNvf9Z15VNub6Wk1oq6VcMm34omrrVZevs      1107.542897               400000.0        0.002768857
## 78  QmbzgPPc7pHwRetjTjGY7tfNG7sfrbkDpbhYFewtisZpvc      6186.104957              2267010.9        0.002728750
## 79  QmdkY9X6Wt3GXA67NYBMJ2NRX6rUsFyQkhk21cqGVZn1sf     19182.173948              7272134.3        0.002637764
## 80  QmcaboaEjatWFRe4fUcxXbajtEVJwr2emvdrA6VdjfXGyT      2749.110964              1065174.0        0.002580903
## 81  QmUhiH6Z5xo6o3GNzsSvqpGKLmCt6w5WzKQ1yHk6C8AA8S      2518.447688              1052947.3        0.002391808
## 82  QmYWvmm6rxvAk8E3cA6iXPhC6ETBLJFuEw8maYJ7YV9ATx     20447.448637              8824698.7        0.002317070
## 83  QmYXL6XeXyGC2DCnoQ45ApG68pi8irCZdRdtFx69FetRDd     18903.509363              8177120.0        0.002311756
## 84  QmXZiV6S13ha6QXq4dmaM3TB4CHcDxBMvGexSNu9Kc28EH     63192.484713             36449331.2        0.001733708
## 85  QmVUMSVtJ4uAfUBBcgYJ9Ed43j27TZirZd7gzv6cUVqT6x         0.000000                    0.0        0.000000000
## 86  QmQfH6zEaoHns9d3jNwko8QXmb8xVofQKPdCLop6qKMUnn         5.900000                  900.0        0.006555556
## 87  QmXUTLBibdxWtk37dxJLcchSZfRz7FxKHdqrQwc6y5zwas         5.880600                  900.0        0.006534000
## 88  QmNeyrYWm2HgmJ1EUToNfacWUaiDmTnV32EJa9TvndVg9f         5.940000                  900.0        0.006600000
## 89  QmaRd3T8BTfPMNMrxo9uehkZFuHeqavLxUhAXTnQ3xPbGj        68.328874                19570.0        0.003491511
## 90  QmcBxAXivw8bkNAhqavTzjEtbH8KSeS8NaSUiPU2fSbqWQ         4.395600                  700.0        0.006279429
## 91  QmQSNjw39ij4nmjNmpsC6t3fkBvjdfMujK52bkRHExuyM6         4.962533                  701.0        0.007079219
## 92  QmY3km7en3EKFN36tGDp1rgpRJ6VicFYsCUEHjSciHvzPR      2079.000289               618735.0        0.003360082
## 93  QmcZaxZhpJ3HUKxtV1HD29TFf52GprC6HRbJkC8w6soizb         3.000000                  400.0        0.007500000
## 94  QmeHJ8Wyk7HpAtFLSNNraVkoiqv78MheDJfLpbdGBb8U2L         3.000000                  400.0        0.007500000
## 95  QmT4t8qY58x1M6wyGrY4DmMsxa6oEYWurP1TULL1Ca3GTc         2.970000                  400.0        0.007425000
## 96  QmZhm7MB9vuPkBeH5yNziz7jsUBZ8eHcAZYDo1n3EXjt9R         1.980000                  300.0        0.006600000
## 97  QmWMLVUQCzsqvQjjaAncpRdkjSVnRBJyZ92a3YAUj9Ynm8         2.000000                  300.0        0.006666667
## 98  QmY8eiuPsky2mPnmgUh7jY2ahri6qLFHhCMHAyMhcJoTA6         2.000000                  300.0        0.006666667
## 99  QmNNwHNNs2MTtXnPbcLyRZ8KPnrg3CgXHfyMMVmx4qc3Rt       101.662307                30024.0        0.003386035
## 100 QmVQtVpxv9P3Lf1TtLDufqgnkw5RHCMubgsGTgq2orbCfU       118.925752                35158.0        0.003382609
## 101 QmcFx1aE7VhWXkQhcZyrzfm8AGkSzSWeid2FjTEkYBfKou         1.940612                  300.0        0.006468708
## 102 QmZM8HcNZRZDNTKf4wGZmiSJRX5EQNaZcHrG2BpjqDLkUE         1.000000                  100.0        0.010000000
## 103 QmaBvS459yzfu5ykA9eL6S8t1J8PeCm8n3112DVWqSNis5         1.000000                  100.0        0.010000000
## 104 QmT8Y6WqcTD6iR6DbTzfwQUiar5FtuZnqJhT3t28dp4SXD         1.000000                  100.0        0.010000000
## 105 QmaJcXuvGW3GST8UfjTHSXSpmJ4YupCXfyYq6K2L99FX1w         1.000000                  100.0        0.010000000
## 106 QmS9GuSvYWfsh1vJckTt6DSwAnnPxQ8XqWoz6tF6Zh4NLi         1.000000                  100.0        0.010000000
## 107 QmXX9JNqpsmph2GdgJNHFB1Xm9JSAni3QZZ96vfngXU4KE         1.000000                  100.0        0.010000000
## 108 QmXYNUvUc9CriaaCfkevhjG8389GqYXPEM7S6zQTq1dB8P         1.000000                  100.0        0.010000000
## 109 QmfTYPHrWaYkaFzwCwmXXshc3Vb7pp77uiqB7XmBb7g14b         1.000000                  100.0        0.010000000
## 110 QmNi1Vyaz6bR6ag3NFBgqWabaQkE2zELvEpB8Xi3qFK9YF         1.000000                  100.0        0.010000000
## 111 QmVgdHuPrJiWbHDez2M8D6k3WrJ7FN1PK5KHAZt5c2dJE8         1.000000                  100.0        0.010000000
## 112 QmPrUvv9vfDrBoZ2rU6CGeu23FijhHtnKiVFAvarVRHzYx         1.000000                  100.0        0.010000000
## 113 QmbNf8kZMDURSwBrsTfoqn3QfowCx2gEhCBFE3qKTTGZAG         1.000000                  100.0        0.010000000
## 114 QmUjTw5kC7RoTwNuLoGtPsyfRQBioosWDYZCE81RR5T95R         1.000000                  100.0        0.010000000
## 115 QmdUknu8tyvH1BAE1X2rshXNDBPToYtQ8JypEKTxxcdGem         1.000000                  100.0        0.010000000
## 116 QmSL65DYNfaaabj4tVeTnAzinpgZsDvEUsTsEu79YykxjW         1.000000                  100.0        0.010000000
## 117 QmSfKsoBUHcezd6uhhftvFAjLQm1JvbJLRPPGHRvzTYwna         1.000000                  100.0        0.010000000
## 118 QmdiykT6LaGCiqPwrpZMsYzXh2PExBbnR3fcLj15q5cdXd         1.000000                  100.0        0.010000000
## 119 QmWjKBaLENbsi2BPzUxpdiX7FUmw1eZqjEfLNv83RNb6YD         1.000000                  100.0        0.010000000
## 120 Qmej11EGGzNGfbnEKbda3tHJogv9fwt2Rk3GRWNd8kY3Uq         1.000000                  100.0        0.010000000
## 121 QmSj3cbVeNzXywVHQ1Ary5spgsa6LyrWcnhyRyLBPb4GKz         1.000000                  100.0        0.010000000
## 122 QmTEQP9HPHsgQiKdNREVHS7F4waxEwCeq32eTU5hCRXgN4         1.000000                  100.0        0.010000000
## 123 QmZ3TUhnG2cJxniWhy7zFk7vZCVnmUZagWcvURuhGBp3Nd         1.000000                  100.0        0.010000000
## 124 QmSfYVdY2taCQ7DtLYXo19CkCdNWc8HN1oUuVjEJhoKqhz         1.000000                  100.0        0.010000000
## 125 Qmb4YEj9qpoZd8iLVLWPdfVMsG3o5qBcFxZHXucGrUnd2w         1.000000                  100.0        0.010000000
## 126 QmcBbQDQjqg2BJWLGGXmdgsFBMZyQ59KWS42Z9NMcXe1nu         1.000000                  100.0        0.010000000
## 127 QmPHGCrBbDG2UX4kDxk4mMrC9cFKCYVQFWFoZVPDwuy31m         1.000000                  100.0        0.010000000
## 128 QmP7KPubjkDA6EDr5rKNUbwzsEdGwNzr1wNRZctkfxix1x         1.000000                  100.0        0.010000000
## 129 QmWNScL6xFVfFConNbNLobijUEGaWofqRewXgriD2QmhGZ         1.000000                  100.0        0.010000000
## 130 QmdBdHWLMJGJYscE2SVstqTuAJxrjxvepWg1hEbKti4dYh         1.000000                  100.0        0.010000000
## 131 QmPCJRrA1Fwbusu5oCu3zTaDoGzaPq3zc4FnhNdj2XDMFj         1.000000                  100.0        0.010000000
## 132 QmXHxAEB493jUAcBVhwCd2odCdF2mh96GKndhaeHYGEoKG         1.000000                  100.0        0.010000000
## 133 Qma4JUhxBgdoMGHs5MNnqWPbk2d3mE1SvqdPjRT8qwooyK         1.000000                  100.0        0.010000000
## 134 QmevNFrcEkZcb7bji3xYuU5UWP7TZ9kurTJ4mW5VebGc9S         1.000000                  100.0        0.010000000
## 135 QmaTJb3mqt56BpjYzrH6YbQN1v38px64B3DMpXW7V4kVWD         1.000000                  100.0        0.010000000
## 136 QmdZDNidSJ1j8Ka2hQYjdiJZv3jhhqMG28MytKUDV5xwv8         1.000000                  100.0        0.010000000
## 137 QmcBiwphyMWgxqM3YFDrtG1JFq2Bi8qKSAjxvfoStJDieU         1.000000                  100.0        0.010000000
## 138 QmV4wyo47CoTejAVW6Cw4EVVc4pL4CWNmFWHwrwTsJrjiK         1.000000                  100.0        0.010000000
## 139 QmatbdjawELyy69kyuG7TC8RKebsdgMoRpwX5ZYy9rURbC         1.000000                  100.0        0.010000000
## 140 QmWdUm7HxFFXysSLGvFB1zjaSeYR8SPiLDo2M4gopdHajK         1.000000                  100.0        0.010000000
## 141 QmS7wExrveyxpN5g6sfykDUkVHX7oGqvMr8Mw82SueXU8S         1.000000                  100.0        0.010000000
## 142 QmbK8eiivKro8XT9xALjQSbDtcdTBPVYzZeC29gUua7P7F         1.000000                  100.0        0.010000000
##     queries_per_indexer new_allocation potential_rewards
## 1           1205.125000          55600       0.003356372
## 2            181.000000          43500       0.003356027
## 3          39516.272727          37100       0.003355835
## 4          37568.700000          25500       0.003356347
## 5            213.500000          20700       0.003355423
## 6         237148.333333          20200       0.003354449
## 7         431771.625000          20100       0.003355229
## 8            252.300000          18400       0.003356235
## 9          22801.500000          17900       0.003354803
## 10         10686.923077          17700       0.003356197
## 11            13.000000          17600       0.003351615
## 12         87430.500000          12200       0.003342358
## 13            11.400000          11000       0.003354092
## 14          3509.500000           9800       0.003352023
## 15           156.307692           9700       0.003355988
## 16          3203.000000           9500       0.003334361
## 17        122677.285714           9400       0.003354849
## 18             6.300000           8900       0.003354483
## 19        225390.000000           8300       0.003354335
## 20            43.500000           8300       0.003331309
## 21        218786.500000           8200       0.003353384
## 22         71765.545455           8200       0.003352285
## 23         64938.454545           7900       0.003349946
## 24         83585.500000           7800       0.003355169
## 25         35332.538462           7200       0.003354251
## 26         54463.363636           6100       0.003354268
## 27            50.000000           5900       0.003345648
## 28        103522.117647           5600       0.003355770
## 29            26.000000           5200       0.003349677
## 30            55.846154           5200       0.003356258
## 31           780.500000           4900       0.003322148
## 32           269.500000           4900       0.003322148
## 33         28748.727273           4800       0.003354857
## 34        176436.000000           4600       0.003305163
## 35         25437.181818           4300       0.003353400
## 36          1972.000000           3700       0.003337481
## 37          5500.000000           3500       0.003355121
## 38          2451.666667           3200       0.003356075
## 39         50194.500000           3000       0.003349550
## 40         61558.500000           3000       0.003267246
## 41         38804.600000           3000       0.003352821
## 42             7.142857           2500       0.003356214
## 43            27.000000           2100       0.003226850
## 44            74.000000           2100       0.003341250
## 45            24.000000           2000       0.003312773
## 46            54.000000           1900       0.003216904
## 47            51.000000           1800       0.003215562
## 48            28.000000           1800       0.003215013
## 49            23.500000           1800       0.003213331
## 50            27.000000           1800       0.003213330
## 51          4330.000000           1700       0.003311611
## 52            27.500000           1600       0.003302819
## 53        240187.500000           1600       0.003223693
## 54            22.500000           1600       0.003279706
## 55          1529.000000           1500       0.003177581
## 56            28.500000           1500       0.003277924
## 57            28.666667           1200       0.003333715
## 58        152483.000000           1100       0.002900595
## 59        108452.000000           1000       0.001965289
## 60        287201.000000           1000       0.002242782
## 61        126135.600000           1000       0.003326954
## 62        157502.647059           1000       0.003345793
## 63        126565.687500           1000       0.003320642
## 64        124488.153846           1000       0.003319778
## 65        114561.285714           1000       0.003297385
## 66         65933.166667           1000       0.003275697
## 67        231820.500000           1000       0.003237313
## 68         50866.266667           1000       0.003216542
## 69        230148.800000           1000       0.003124874
## 70        141770.230769           1000       0.003092330
## 71        180819.285714           1000       0.003092619
## 72         66396.777778           1000       0.003056828
## 73        128124.000000           1000       0.002995210
## 74        233633.444444           1000       0.002985358
## 75        436114.571429           1000       0.002979623
## 76        641672.388889           1000       0.002913740
## 77        182480.500000           1000       0.002761264
## 78        156356.214286           1000       0.002727426
## 79       1253062.117647           1000       0.002637365
## 80        936031.055556           1000       0.002578241
## 81         99344.882353           1000       0.002389312
## 82        212557.100000           1000       0.002316782
## 83        205762.625000           1000       0.002311445
## 84        712423.555556           1000       0.001733655
## 85                  Inf           1000       0.000000000
## 86            49.000000            900       0.003105263
## 87            48.000000            900       0.003095053
## 88            50.000000            900       0.003126316
## 89            24.500000            800       0.003338001
## 90            48.000000            700       0.002930400
## 91            26.500000            700       0.003306151
## 92             4.461538            700       0.003355743
## 93           138.000000            400       0.003333333
## 94           138.000000            400       0.003333333
## 95            50.000000            400       0.003300000
## 96            51.000000            300       0.002828571
## 97           100.000000            300       0.002857143
## 98           102.000000            300       0.002857143
## 99          8129.800000            300       0.003341517
## 100        35569.272727            300       0.003344557
## 101           24.000000            200       0.003234354
## 102           60.000000            100       0.003333333
## 103           49.000000            100       0.003333333
## 104           55.000000            100       0.003333333
## 105           50.000000            100       0.003333333
## 106           50.000000            100       0.003333333
## 107           48.000000            100       0.003333333
## 108           48.000000            100       0.003333333
## 109           48.000000            100       0.003333333
## 110           50.000000            100       0.003333333
## 111           50.000000            100       0.003333333
## 112           51.000000            100       0.003333333
## 113           48.000000            100       0.003333333
## 114           52.000000            100       0.003333333
## 115           48.000000            100       0.003333333
## 116           50.000000            100       0.003333333
## 117           50.000000            100       0.003333333
## 118           48.000000            100       0.003333333
## 119           50.000000            100       0.003333333
## 120           47.000000            100       0.003333333
## 121           51.000000            100       0.003333333
## 122           50.000000            100       0.003333333
## 123           50.000000            100       0.003333333
## 124           50.000000            100       0.003333333
## 125           48.000000            100       0.003333333
## 126           48.000000            100       0.003333333
## 127           50.000000            100       0.003333333
## 128           50.000000            100       0.003333333
## 129           53.000000            100       0.003333333
## 130           49.000000            100       0.003333333
## 131           50.000000            100       0.003333333
## 132           50.000000            100       0.003333333
## 133           48.000000            100       0.003333333
## 134           49.000000            100       0.003333333
## 135           50.000000            100       0.003333333
## 136           44.000000            100       0.003333333
## 137           51.000000            100       0.003333333
## 138           51.000000            100       0.003333333
## 139           48.000000            100       0.003333333
## 140           50.000000            100       0.003333333
## 141         2287.000000            100       0.003333333
## 142           49.000000            100       0.003333333
##  [ reached 'max' / getOption("max.print") -- omitted 31 rows ]