   defers = []
   encrypt_requested_fields(values, names_to_encrypt, defers)
   $.when.apply($, defers).done(() -> # Spat defers to param list with apply
-    reinsert_values values
     callback(values)
   )
 

    if contains(element.name, names_to_encrypt)
      d = $.Deferred()
      defers.push d
      console.log "Encrypting #{element.name}"
      encrypt(element.value, (result_string)->
        element.value = result_string.toString()
        console.log "#{element.name} finished encryption"

  buffer = collect_sources(elements)
  encryption_source_names = find_names_for(form, elements)
  wipe_source_fields(values, encryption_source_names)
  write_target(buffer, values)
  callback(values)

collect_sources = (elements)->
  buffer = ""
