dumped everything together while i figure out references