First iteration, still crufty