RNBW.wiki
🇪🇸
🇷🇺Русский 🇬🇧English 🇪🇸Español 🇨🇳中文 🇩🇪Deutsch

Todos los poseedores de RNBW

La lista completa de direcciones con saldo distinto de cero, no sólo la cabecera. Está construida a partir de los eventos de la cadena y no de un explorador, y verificada contra la emisión total del token: hasta que la suma de todos los saldos no coincida con la emisión hasta el último wei, la lista no se publica.

La lista

Ordenada por saldo. La búsqueda acepta tanto una dirección completa como su principio: bastan unos pocos caracteres después de 0x.

Las direcciones llevan etiqueta allí donde se conoce: casas de cambio, pools de liquidez y los propios contratos de Rainbow. Las demás no la tienen en ninguna parte: son monederos corrientes.

De dónde sale la lista

El saldo de una dirección es todo lo que entró menos todo lo que salió. Por eso la lista de poseedores y sus saldos se reconstruyen sólo con el registro de transferencias del token, sin una sola petición a un explorador.

01

Leer todas las transferencias desde el nacimiento del token

El contrato del token se desplegó en el bloque 41349994. Desde ahí hasta la cabeza de la cadena se leen todos los eventos Transfer, del orden de trescientos sesenta mil. El recorrido es reanudable: guarda su estado por el camino y, si se interrumpe, continúa donde se quedó en vez de empezar de nuevo.

02

Sumar los saldos

El importe se resta al remitente y se suma al destinatario. La dirección cero no entra en la lista: por ella pasan la emisión y la quema, y no es una poseedora.

03

Verificar contra la emisión, y sólo entonces publicar

La suma de todos los saldos positivos debe coincidir con totalSupply() del contrato. Coincidir exactamente, no aproximadamente: la aritmética sobre eventos no redondea, así que una discrepancia significaría eventos perdidos. Si no coincide, la salida no se sobrescribe: el recorrido vuelve a ejecutarse y recoge lo que faltaba.

Por qué no el explorador. Blockscout tiene una lista ya hecha, pero la sirve de cincuenta en cincuenta: para cincuenta y tantas mil direcciones son más de mil peticiones. Tras cincuenta cierra la puerta durante horas y, mucho peor, empieza a devolver respuestas incompletas sin ninguna señal de recorte. Así perdimos ya el 61,5% del total del cashback, antes de cambiar la fuente a los nodos. Una lista montada de ese modo estaría mal en silencio, y eso es peor que no tener lista. Y no habría con qué comprobarla: el explorador no ofrece ninguna magnitud contra la que verificar el total.

Qué cuenta como poseedor

01

No son stakers

Tener el token y tener una posición en staking son cosas distintas, y los dos conjuntos apenas se solapan: cincuenta y tantas mil direcciones poseedoras frente a unos tres mil stakers. Una dirección que encerró todo su saldo en staking queda a cero y desaparece de esta lista: los tokens pasan a contar a nombre del contrato de staking, no de una persona.

02

Los contratos cuentan igual que las personas

En la lista hay pools de liquidez, el contrato de staking y la tesorería. Son direcciones, no propietarios, y sumarlos a los monederos como «poseedores» sería incorrecto. Por eso los conocidos llevan etiqueta: para que se vean y se puedan restar.

03

Una persona puede tener varias direcciones

Lo contrario también es cierto: detrás de una sola dirección de una casa de cambio hay miles de personas. El número de filas de esta lista es un número de direcciones, no de propietarios, y no debe leerse como un número de personas.

Los datos se actualizan solos: tras el primer recorrido completo el recolector lee únicamente los bloques nuevos. Se sirven como /api/holdersall/index.json y archivos de quinientas filas junto a él.