**16th** of every month. Each Panda HODL owned will be the equivalent of one ticket in the raffle. Tickets will then be weighted by the length of time the owner has owned the NFT. The winner picking code can be found here.

## July

**Rekt Chicken #4146**

Floor 680 STARS

## June

**Cryptonium #1270**

Floor 3.2K STARS

## May

**Chilled Kids #2121**

Floor 985 STARS

### Past winners

DATE | $STARS address | NFT |
---|---|---|

July 2024 | Rekt Chicken #4146 | |

June 2024 | arc.stars | Cryptonium #1270 |

May 2024 | massive-membrane.stars | Chilled Kids #2121 |

Google sheet winner picker code:

```
function pickWeightedWinner() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const dataRange = sheet.getDataRange();
const values = dataRange.getValues();
let weights = [];
const now = new Date();
for (let i = 1; i < values.length; i++) {
const entryDate = new Date(values[i][0]);
const ageDays = (now - entryDate) / (1000 * 60 * 60 * 24);
const weight = Math.max(1, ageDays);
weights.push(weight);
}
const winnerIndex = weightedRandomSelect(weights) + 1;
Logger.log(`The winner is: ${values[winnerIndex][1]}`);
sheet.getRange('Z1').setValue(`Winner: ${values[winnerIndex][1]}`);
}
function weightedRandomSelect(weights) {
const totalWeight = weights.reduce((a, b) => a + b, 0);
let threshold = Math.random() * totalWeight;
for (let i = 0; i < weights.length; i++) {
threshold -= weights[i];
if (threshold <= 0) return i;
}
return -1; // Should not reach here
}
```