merging a bunch of bs so I can sync upstream