finish first pass
work