Here is a reminder of the example:
```R1:[4, 9, 16, 25, 36, 49]R2:[13, 16, 14, 16, 22]R3:[11, 12, 12, 11]R4:[5, 6, 5]R5:[11, 11]R6:[4]```
The logic behind this series is that an element in a list is the sum of the digits of the 2 elements above it in the previous list. For example, 16 in R2 is below 9 and 16 in R1, and 16 = (9) + (1 + 6). It follows logically that there are less and less items in the lists.
Here is my script to create a file containing the terms for the seed `R1 = [25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625]`:
```pythonr = [25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625]answer = 'R1:' + str(r)for i in range(2, len(r)):    next_r = []    j = 0    while j < len(r) - 1:        cell = 0        n1 = r[j]        n2 = r[j+1]        for k in str(n1):            cell += int(k)        for k in str(n2):            cell += int(k)        next_r.append(cell)        j += 1    r = next_r    answer += '\nR' + str(i) + ':' + str(r)answer += '\n'
with open('answer.txt', 'w', newline='') as f:    f.write(answer)```
Notice the `open('answer.txt', 'w', newline='')`. If you are on a Windows system like me (have mercy), Python will sneakily insert CRLF instead of simple LF for newlines, which will result in a wrong MD5 hash. The `newline=''` parameter is there to make sure that you stay in control of how newlines are written in the file.
Then, we can proceed to calculating the checksum of our `answer.txt`. I would recommand not using online tools to do this, I lost precious time because of that aswell. I found this MD5sum: `a734829aea9dc35004a53b1502600102`.
Finally, we send this answer using `nc 35.223.124.128 1337`, and we get the following flag: `vulncon{JVXWIZJNKNPUQZLYMNXWIZI}`.