       unresolvedNames = newMap()
       for name, binding of values bindings
         if canonicalType = ctx.finalType name
-          # log "already resolved", name, group
+          # log "already resolved", name, group, binding
           for type in binding.types
             # log "unify", (printType type.type), (printType canonicalType)
             unify ctx, type.type, (freshInstance ctx, canonicalType).type

          if ctx.isInTopScope()
            # TODO: error missing name
          else
            ctx.addToDeferredNames
              name: name
              type: addConstraints canonicalType, allConstraints

          contextType instanceof TempType
      # Typing deferred, use an impricise type var
      type = toConstrained ctx.freshTypeVariable star
      ctx.addToDeferredNames {name: symbol, type: type, expression: atom}
      nameTranslate ctx, atom, symbol, type
    else
      # log "deferring in rhs for #{symbol}", ctx.definitionName()
