#gemini-long-context

1 messages ยท Page 1 of 1 (latest)

mystic hawk
#

Hey, looking for a team mate to have fun tweeking with gemini api

novel horizon
mystic hawk
meager pond
#

anybody looking for teaming up?

eager mortar
#

yes sir

#

i'd like to fund some efforts for gemini long context

#

i want to investigate/interrogate gigantic mailboxes

magic needle
eager mortar
#

I want to be able to search through vast piles of company docs and mailboxes with more advanced LLM reasoning and find crucial evidence in criminal/fraud legal cases.

For example, we could use the Enron dataset to search for evidence of fraud and deceptive practices. These cases happen all the time.

In the legal world they might spend millions on low-level legally trained staff to decide what docs/emails might be relevant (or not) to a case. I believe Gemini long context is an amazing candidate to help save $$$ in this realm.

Of course, using my imagination I can think of way more uses for this kind of system but this is just the one that occurs to me with an immediate cost-benefit.

There are companies working on this that could be worth multi-millions but I think Gemini long-context cracks open the use-case to make it more accessible. Iโ€™d love to open source it and see it used to investigate corrupt companies and government agencies by analysing their comms at scale.

Iโ€™ve done months and months of planning on this idea but I just canโ€™t crack the technical side. Iโ€™d be willing to fund some time spent on entering this competition together to see what we can achieve.

stoic karma
#

hello, guys nice to see you , i have a question which dataset do we use?

mystic hawk
eager mortar
#

to use with the long-context window?

mystic hawk
floral notch
#

You have to use Gemini with the API, there is nothing to fine-tune. I don't think there is a possibility to fine-tune the model in the way GPT offers it on their platform.

stoic karma
wicked zephyr
#

this competition is interesting but I realized that my use case was too difficult for Gemini, it only considered a fraction of the data :((

mystic hawk
valid junco
#

you guys focusing on gemini 1.5 pro or flash?

mystic hawk
meager pond
gilded fox
#

hey are you guys working on this and if so i want to be in, and like to understand and contribute. @meager pond @mystic hawk

twin pecan
#

does the data used for the model as input have to be publicly available or not neccsary ?

rich steppe
#

anyone got this error "ResourceExhausted: 429 Resource has been exhausted (e.g. check quota)."

royal oar
#

Hi ! Is anyone aware if google provides API keys for this....if they want us to use that large a context size, will it be possible without subscription ?

rich steppe
twin pecan
#

the only limit would be rate limits for tokens and no context caching

twin pecan
#

but you are limited to 32K TPM , so I'm not sure how you can reach the large context with the free tier ..

rich steppe
iron bolt
#

Are we supposed to do this on Kaggle notebook or Colab Notebook

Get this message on Kaggle Notebook: FailedPrecondition: 400 Use of API-based models is not allowed for Internet-disabled notebooks

I guess I'll do this locally for now.

royal oar
iron bolt
fleet pivot
#

Hello here. I hope everyone is doing well.
Is it possible for us to use agents in our solutions, and if so, which ones would you recommend? I've tried Crewai, but I'm getting a lot of conflicts between it and the google-generative package.

drowsy berry
#

Hello i am searching for a team mate ? Anyone to join?

vapid linden
drowsy berry
#

Okey we can talk in chat

iron bolt
iron bolt
cosmic sable
#

could i chat in dms?

#

i having problems getting my code to run due to the error

wicked zephyr
#

But I have a new idea related to predicting things with Gemini ๐Ÿ‘€

red fern
#

How is the competition going so far for everyone?

plain storm
#

Hello everyone,
I have a query about this competition. Please help me out.
Whether I need to create a RAG agent with Gemini AI, where I can chat with my own data or something else?

Please clarify it to me. Anyone.

Thanks

wintry citrus
#

would anyone be able to point me towards a function list with syntax for the Gemini API in Python?

neat cairn
#

Anyone getting internal error 500 for chat session?

neat cairn
gleaming cairn
#

I am encountering a 429 Resource has been exhausted (e.g. check quota)

Any way to increases the quota?

trim shuttle
#

Hey all, I am getting "429 Resource has been exhausted (e.g. check quota)." API Error - It has to do with the numbers of API calls you make in a given time

#

randomly wait for 5-10 seconds to avoid "429 Resource has been exhausted (e.g. check quota)." API Error

time.sleep(random.uniform(5, 10))

#

try this, to prevent the quota error

gleaming cairn
#

I have 2 docs of approx 700 pages and a single request, so I highly doubt if it is related to number of api calls

trim shuttle
gleaming cairn
#

I have only one request, no repeated calls, just a big document

#

Is there no way to increase quota?

trim shuttle
#

Did you try that API call numerous times in a given day ?

gleaming cairn
#

Yes

#

But as soon as I take a smaller document, it works

trim shuttle
# gleaming cairn Yes

I think they limited API calls with long context per hour per API key (in your case 700 pages)

gleaming cairn
#

I was encountering something similar, so I chopped my pdf into multiple parts but to reach my final conclusion I have to use all parts of the pdf

How do you suggest I go about this?

trim shuttle
#

do your text generation in chunks first, and then club those outputs and put it under another API call for your text generation to get to final conclusion

gleaming cairn
#

Wont that hinder my output?

trim shuttle
#

Token limits are really difficult to get around in this age of AI. They limit how much you can feed the models and as a result, it makes it really difficult to summarize longer texts that go over the limit. Last time we encountered this issue with GPT-3, we did a recursive summary, this time around, we try again with all the refinements expect...

โ–ถ Play video
#

the idea is called recursive text generation (see the video above, it is about long-form text summarization using recursive text summarization)

#

I would cache the 700 page document using context-caching and then do recursive text generation on let's say 4 chunks (700/4=175 pages chunk, you get 4 outputs, then you stuff those four outputs in another prompt to get final output)

gleaming cairn
#

Thanks man

burnt cosmos
#

is this a good token count?
prompt_token_count: 26690
candidates_token_count: 1445
total_token_count: 28135

iron bolt
#

has anyone started getting this error message: (this is not my project)

stable hearth
#

Hello there guys! Short question. Does long video input count as long context window for the competition? From the context i understand it does, but wanted to ask first so i dont get derailed by this.

vast hamlet
stable hearth
vast hamlet
# burnt cosmos is this a good token count? prompt_token_count: 26690 candidates_token_count: 14...

One of the eligibility requirements is that your method uses at least 100k tokens. For more detail see https://www.kaggle.com/competitions/gemini-long-context/overview/submission-instructions. Remember the goal is to score as highly as possible according to the evaluation rubric, while also satisfying everything from the eligibility criteria.

stable hearth
#

Made sense, just wanted to make sure before start implement it

iron bolt
#

I have a use case where i need more than million - if i use multiple API tokens to leverage more than million (say 1 million tokens across 3 'accounts' or something) would that break rules?

If it is, I'd just re-cache every time and basically mimic/serialize "agent" like behavior of using the cache X --> wipe cache X --> cache Y --> wipe cache Y based on usage.

buoyant bane
#

How do you activate the internet capabilites of a Kaggle notebook?

verbal storm
thin goblet
#

Has anyone managed to get context caching working?
I've been trying the code example from the docs (https://ai.google.dev/api/caching), but for some reasons I keep getting the same 403 error when trying to create the cache content. The same file seems to work fine if I directly upload and using it without caching.
PermissionDenied: 403 You do not have permission to access the File <ID> or it may not exist.

river viper
#

@vast hamlet Cool to use Gemini via Vertex AI on this? Or does it have to be the non-Vertex version of the API?

orchid flower
candid crown
#

May be a section with FAQ and answers could be useful given that I see people having the same issues ? What do you think about that? I think it would save everyone a lot of time

chilly meadow
#

Can we use RAG in this competition

neon scroll
#

Hi guys, the use of the gemini flash model is by our own billing or is kaggle providing some free credits to use it?

neon scroll
# chilly meadow Can we use RAG in this competition

It seems like one of the points of this contest is demonstrate that with a large context window methods line vector databases or RAG can being put aside:
"With large context windows, methods like vector databases and RAG (that were built to overcome short context windows) become less important"

oblique heath
dreamy marten
#

Hey everyone , just joined this competition , I would be glad to join a team if anyone needs member . I am a Professional Data Scientist with 1 year of work experience , currently working in Conversational Generative AI.

winter saddle
#

Hi everyone! It's great to be part of this group. I'm encountering an error message when trying to load documents using the method caching.CachedContent.create: "ServiceUnavailable: 503 upstream request timeout". Considering the context, testing Gemini's capacity for a large corpus this is a bit confusing ๐Ÿ˜…. Has anyone else experienced this error or found a workaround? Thanks for your help

tacit stream
#

Hello everyone!! Glad to be here

thin goblet
spark nest
#

hello @vast hamlet ,
We wanted to make an vs code extension to interact with the model. Will that be taken into consideration along with notebook?

winter saddle
tacit stream
#

Hello people!!! I had a query
I am making use of examples that are AI generated. Should I include the method to generate the examples in the main notebook itself or should I link another notebook where I generate the examples . Those generated examples will be saved in a text file

winter saddle
tacit stream
#

Yes Im planning to do that but I wanted to ask that the method used to generate the method should be included in another seperate notebook or in the same notebook as my solution ? I fear it becoming too cluttered

winter saddle
tacit stream
#

Oooh , ok . Thanks

upper moth
#

Is there any advantage submitting earlier than the deadline? Are there any guardrails preventing people from taking an early public submission, improving it a little bit, and winning with it?

tacit stream
#

I also have this concern

tacit stream
#

If we are using data of our own in kaggle datasets do we have to make it public ?

upper moth
#

<@&1303433601177751593> Could you please take care of the spam?

upper moth
#

Anyone experiencing issues with the API returning no candidates and no errors?

#

I'm passing a log context (100k+) in the prompt directly, and getting this behavior. Exponential backoff does not seem to help.

upper moth
#

I switched to Vertex. Do I get it right that it has a 5 RPM limit, and I need to request an increase if I want more? That's really weird, because I get a lot more RPM when going through Google Generative AI.

tacit stream
vast hamlet
upper moth
#

@vast hamlet Oh, Google quietly approved my quota increase. This was 5 before.

vast hamlet
vast hamlet
upper moth
#

I'm running into this when I use tqdm on Kaggle. The progress bar does not show. And if I use the text-based progress bar, Kaggle can't handle showing multiple.

#

Any chance we could submit as a Colab notebook? Honestly, the Kaggle notebook experience has been pretty bad.

upper moth
#

@vast hamlet ?

blissful zealot
#

Can someone assist me here?
I'm dealing with a token size of combined files totaling 164,767, and I'm encountering the following error:
ResourceExhausted: 429 Resource has been exhausted (e.g., check quota).

upper moth
#

@blissful zealot pretty self-explanatory, no?

blissful zealot
#

My bad... I'm feeling quite exhausted from working on my project. When I saw that we needed to handle more than 1 lakh tokens in the notebook, I mistakenly thought we had to submit at least 1 lakh tokens.

upper moth
#

@blissful zealot Yo do need to make use of at least 100k tokens of input context, that is correct.

blissful zealot
#

The current rate is set at 30k TPM, correct? Iโ€™ve submitted a request to increase it. If you have any leads or suggestions that could help, Iโ€™d really appreciate it. By the way, Iโ€™m working with over 100k token sizes in my notebook.

upper moth
#

Pretty sure it's 30K output tokens.

#

Hm, Actually, no, that must be input.

#

I switched my key to paid (and it's actually not cheap when you have to iterate with a lot of large calls), so IDK.

#

Are you sure you are not hitting the 2 RPM limit though?

upper moth
#

Is notebook import feature now broken on Kaggle? The notebook open fine in Jupyeter, but if I import it into Kaggle, it does

#

Really appreciate Kaggle hosting the compentions, but the notebook experie has been a solid 2/10. I remember using Kaggle a couple years back, and the notebooks were working mostly fine.

#

I was able to import by committing to Github and linking the notebook, but the code looks like this. Kaggle just added extra newlines.

#

I have a feeling I must be doing something wrong, because I can't believe Kaggle notebooks are this broken.

river viper
tacit stream
#

Hello everyone , I wanted to confirm whether the final submission google form will also stay open till 11:59 of 1st December

Also just to make sure, it is not necessary that our video has a lot of views / likes/ how long back it was posted right?

tame ridge
#

HI... can someone tell me how to get started?

#

i have a idea but i believe i would need lanchain/langgraph for it

#

does this competition allow that?

#

if not, which docs to follow to create multi agentic system

tame ridge
#

do we have to link billing account in order to run gemini on 2m token window for this competition?

tame ridge
#

have you guys attached billing accounts? if not, is free tier sufficient?

thin goblet
tame ridge
thin goblet
tame ridge
#

I see... But that wouldn't "stress test" the Gemini right? Only the pro version has 2m token window size

thin goblet
upper moth
#

Nice one, Google

tame ridge
#

haha

thin goblet
iron bolt
#

sigh i racked up $400 as well - curious if there any way for Google to wave this....

upper moth
#

@iron bolt contact the billing support. They said they will issue a refund as a one time courtesy.

iron bolt
#

Thanks will try

tame ridge
upper moth
#

@tame ridge Today.

tame ridge
#

okkk

meager parcel
#

Anyone got consistently hit with Recitation errors when doing some OCR???? Im dead ๐Ÿ’€๐Ÿ’€

tame ridge
#

anyone facing long wait times to interact with cached contexts?

upper moth
#

@meager parcel You just found out? ๐Ÿ˜ญ ๐Ÿ˜ญ

#
# Remove the anti-reciting hack.
def remove_recitation_hack(markdown: str):
    return markdown.replace("[end of paragraph]", "")
prompt = """
...
Insert [end of paragraph] after each paragraph.
"""
#

This is the single most annoying thing about Gemini that severely limits its usability.

#

Luckily, at least for now, it's easy to fool it.

meager parcel
#

Im a bit confused

upper moth
#

With the trick above.

meager parcel
#

remove_recitation_hack(response.text) ???

upper moth
#

Yes?

#

Just ask it to insert something after each paragraph (or sentence), and remove it later.

meager parcel
#

mhmm i'll try it out

#

ValueError: Invalid operation: The response.text quick accessor requires the response to contain a valid Part, but none were returned. The candidate's finish_reason is 4. Meaning that the model was reciting from copyrighted material.
Just to confirm, this is the error u met right @upper moth

upper moth
#

4 is recitation.

#

Idk, [end of pararagraph] works for me.

#

Maybe you will need to ask it to insert something else.

#

Like [end of sentence] for each sentence.

meager parcel
#

thank u Alexey

upper moth
#

How do I add my notebook to the competition? :)

#

I can create a new notebook under the competition, but how do I add an existing one?

upper moth
#

I don't get it. There is no "submit" button. Do I have to create the notebook under the competition, and re-import my existing one???

meager parcel
#

I have not uploaded yet, but i think u just follow the instruction in submission_instruction
To make a submission to the competition, use this Google Form:

  • Include a link to a public Kaggle notebook that is attached to this competition.
  • Include a link to a public Kaggle dataset that contains the data your model used as context.
  • Include a link to a YouTube or YouTube Short video that outlines your completed project.

Eligibility Requirements:

  • The notebook made use of either the Gemini-1.5-Pro, Gemini-1.5-Flash, or Gemini-1.5-Flash-8B API.
  • The notebook demonstrated how to process inputs greater than 10,000 tokens, and contained discussion of why it was helpful for the selected use case.
  • The video summarized a notebook from the Gemini long-context window competition where the author was a contributing member.
  • The video is public and was posted to either YouTube or YouTube Shorts.
#

So create a public notebook and put the link in the google form?

upper moth
upper moth
#

There must be a better way!

upper moth
#

Yes, in order to link a notebook to a competition, you need to add the competition dataset as an input!

#

No way they are going to review the submissions manually, this is clearly a task for AI. :)

#

It would be a cool meta-submission - rate notebooks according to the rules. But I don't think it would require 100k input context.

#

Could also try cool prompt injection - add invisible text to the notebook that instructs the AI to rate it highly. :)

iron bolt
#

very curious what you submit Alexey

upper moth
#

^^

ocean canopy
ocean canopy
upper moth
#

How's everyone doing with the videos? Videos are hard, eh?

iron bolt
#

ugh my notebook won't upload properly so im just doing cell by cell copy

upper moth
#

But then it inserts extra new lines and you need to find-replace them.

stable hearth
#

Guys when i make calls to my cache from my local notebook it responds in 2-3m and context of output is huge

#

when i use Kaggle everything breaks. The call timeouts most of the time and if it succeeds is after 8-9min and the content is half lenght at max probably because of it

#

anyone else has same issues? i dont think i will finish is like that since i made the notebook

upper moth
#

@stable hearth are you streaming the response?

stable hearth
upper moth
#

No

#

What do you mean by half content?

#

For timeout, adjust the connection setting. See my notebook, link above

#

I think you can adjust the timeout.

#

And configure retries if it fails.

#

Pretty sure Gemini rate-limits by IP, and Kaggle probably looks like 1 IP to it. Can't explain the difference in behavior otherwise.

stable hearth
#

I have set a timeout to 10mins

#

by half content lenght i mean that when the call doesnt timeout and it does happen i get half token size repsponse at best than what i do when i call the same thing from my local notebook

#

which is very weird

upper moth
#

It is...

#

I would expect a timeout and no tokens.

#

Or full response

stable hearth
#

yes that happens like 3/4 times

upper moth
#

How many are you getting?

stable hearth
#

but you know waiting 10min for it to fail is crazy everytime ๐Ÿ˜†

upper moth
#

I limit to 2k, and call in multiple steps

stable hearth
#

locally i get around 7000k+

upper moth
#

Yeah, try multistep

stable hearth
#

used to bust oout of context

#

i am not sure if i want to do that i mean it should work

#

i have already used about 100$ on this ๐Ÿ˜ฉ

upper moth
#

This is the most frustrating competition because Kaggle notebooks are broken, and Gemini in Kaggle notebooks is even more broken.

stable hearth
#

Well i ll see what i will do thanks for the help

#

makes sense to at least try what you say here

upper moth
#

Idk if it's within competition rules. You can use the multistep code from my notebook if you think this is within the rules

stable hearth
#

i dont mind writting something myself

#

thanks though โค๏ธ

upper moth
#

Time is the only issue now

iron bolt
#

so does it eventually run

#

i've not gotten a single response yet

tame ridge
#

what if i am using one data source which needs api key?

#

can we share it with the judging team somehow?

#

any idea?

tame ridge
#

has anybody faced MALFORMED FUNCTION CALL randomly? sometimes it throws error and sometimes it just works

bronze quail
bronze quail
#

i wish everyone the best of luck here ๐Ÿ˜„ โค๏ธ

tame ridge
bronze quail
#

hmm yea dont get longer then 500000 characters, and dont call api too often, ratelimit your calls

iron bolt
#

really hate the fact that Kaggle is terrible and im racking up cloud bills

bronze quail
#

iv been analyzing quantum computation data and using gemini as a filter, had the same issue beacuse data inut was too great.

iron bolt
#

prolly spent $200 just to get it working on Kaggle

#

will definitely ask for refund

bronze quail
thin goblet
#

Wasn't the deadline supposed to be ~12 hours ago? Saw the one day left announcement just now ๐Ÿ‘€

iron bolt
#

think we have like 12-13 hours to go

iron bolt
#

its soooooooo frustrating

vivid pecan
iron bolt
#

Do we just record explanation of the notebook

#

and put it on youtube

vivid pecan
#

you need to create a video that is interesting in some way, and max 5 minutes and it needs to be about your project in kaggle.

hoary mist
#

Hi all,

model = genai.GenerativeModel(model_name='gemini-1.5-pro-latest')
daily_csv = genai.upload_file(daily_csv_path)
response = model.generate_content(
    [daily_csv, "Give me a summary of this csv file in one paragraph."],
    request_options={"timeout": 1000} # needed for timeouts for slightly large files
)
print(response.text)

I am trying to do this, but this is not finishing and I am getting : Timeout of 600.0s exceeded, last exception: 503 upstream request timeout

#

the file is a 4.5MB csv file

#

what seems to be going wrong?

iron bolt
#

Kaggle notebook is unusable for this

tame ridge
#

gemini 1.5 pro is not working for me

#

did it work for anyone?

orchid flower
#

How will we get to know who is the winner in google long context window where will they announce it?

upper moth
#

@tame ridge yeah, used it no problem.

#

Well, maybe not no problem. Same problems as with other models. :)

calm orchid
#

When will the result be announced? Any idea?

tame ridge
#

@upper moth how did you reach them about the billing?

upper moth
#

You can also ask the robot, it gave me the link.

#

Don't remember if it was this one

iron bolt
#

i went throught the online cloud person chat

#

filed a ticket

ocean canopy
#

is there a specific hashtag people are using in their YouTube videos?

upper moth
#

My video is so bad, I kept it unlisted.

#

Apparently speaking is very hard for me.

#

Also, 10 sec over the time limit.

#

Idk if I'm screwed

#

@ocean canopy also, I hope you mean it's been done since yesterday.

ocean canopy
ocean canopy
tacit stream
#

@vast hamlet when can we expect the results to be declared

upper moth
rich steppe
vast hamlet
eternal lava
upper moth
#

@eternal lava 5 minutes

#

Was literally doing the last take, and did not have time to edit.

eternal lava
#

If you go to the YouTube settings of the video, I think you can clip off seconds.

upper moth
#

Introducing KeepTrack, a system that harnesses the Gemini API to keep track of anything with video.

This is my entry to the Gemini Long Context Kaggle Competition.

โ–ถ Play video
#

Think Daniel should take 2 first places. :)

eternal lava
upper moth
#

No, it's this one

#

He did not add the competition dataset to the notebook, so it's not showing the the code page.

eternal lava
upper moth
#

No, there is no such requirement.

eternal lava
#

I feel bad for my video now ๐Ÿ˜‚

upper moth
#

Nah, just feel good for his video. :)

north canopy
#

Is the Jupyter Notebook better than the Kaggle notebook because in the Kaggle one u have access to the gpu and tpus.

vivid pecan
vivid pecan
eternal lava
worthy wigeon
#

Gemini 1.5: Revolutionizing Patent Analysis with Long-Context AI | Kaggle Competition Entry

https://youtu.be/YpmvsByIICc

Explore how Gemini 1.5 Flash is transforming patent analysis with its groundbreaking long-context window and ability to handle up to 2 million tokens in a single prompt. This video is my entry for the Kaggle Gemini Long-Context Window competition, where participants showcase innovative applications of this cutting-edge AI model.

Using a dataset...

โ–ถ Play video
eternal lava
ocean canopy
#

Hallucination-Free Prompts with Gemini 1.5 Pro | Google - Gemini Long Context - Kaggle Competition

https://youtu.be/VaFt7ng12ZQ?si=l9nmVceE8rKgRlmG

Don't let AI hallucinations ruin your chat.

In this video, we break down our submission to the Google - Gemini Long Context - Kaggle Competition.

See and use our new approach to minimize hallucinations and write explicit prompts. Using Google Gemini 1.5 Pro's massive context window, we've developed a Kaggle notebook that scores and optimizes p...

โ–ถ Play video
iron bolt
#

damn some of you are so good at videos

#

https://www.youtube.com/watch?v=ZXW96Kp2SCk&t=1s mines really dry i feel, but biomedical / clinical ontology focused

Showcasing is a novel way to leverage Google's 1-2 million context length and context caching - by loading the entire ontology (usually 200-1 million tokens), for submission for Kaggle.

Public Kaggle Notebook is here: https://www.kaggle.com/junghoonson/ai-ontology-entity-linking-for-clinical-content

https://www.kaggle.com/competitions/gemini...

โ–ถ Play video
quaint pawn
#

Better than a database. Better than a calculator. I believe this is demo is the first of it's kind anywhere. See what is enabled when long context becomes widely available.

Learn how to use long context and context caching with my notebook: [https://www.kaggle.com/code/haotiannnnn/intro-to-long-context-and-context-caching]

#ai...

โ–ถ Play video
eternal lava
quaint pawn
#

What did you think?

lethal dawn
#

Multilingual Gemini Powered Finance Assistant for India's Finance Budget - DelhiGen Innovators

โ–ถ Link to the notebook : https://www.kaggle.com/code/bhattbhavesh91/multilingual-gemini-powered-finance-assistant/

โ–ถ Sponsor me on GitHub : https://github.com/sponsors/bhattbhavesh91/
โ–ถ Join this channel to get access to perks: https://bit.ly/Bhavesh...

โ–ถ Play video
eternal lava
quaint pawn
#

Can folks drop their kaggle notebooks, here? I'll upvote for visibility.

ocean canopy
ocean canopy
quaint pawn
rich steppe
worthy wigeon
quaint pawn
#

Both great submissions!

rich steppe
orchid flower
quaint pawn
iron bolt
eternal lava
iron bolt
quaint pawn
#

I like what you've done with the notebook it's very detailed.

tacit stream
#

When are the results being announced guys its pretty late already

rich steppe
upper moth
#

@rich steppe Where?

#

Ah, see it, in the discussions.

frozen reef