# File lib/taps/data_stream.rb, line 188
  def parse_encoded_data(encoded_data, checksum)
    raise Taps::CorruptedData.new("Checksum Failed") unless Taps::Utils.valid_data?(encoded_data, checksum)

    begin
      return Marshal.load(Taps::Utils.base64decode(encoded_data))
    rescue Object => e
      unless ENV['NO_DUMP_MARSHAL_ERRORS']
        puts "Error encountered loading data, wrote the data chunk to dump.#{Process.pid}.dat"
        File.open("dump.#{Process.pid}.dat", "w") { |f| f.write(encoded_data) }
      end
      raise
    end
  end