it gets kinda long