floundering... this stuff should really just be in go..