def insert_scores():
  Database.db.drop_collection(Database.db.scores)
  Database.db.drop_collection(Database.db.country_scores)
  # drop index for fast insertion
  Database.db.scores.drop_indexes()
  Database.db.scores.ensure_index("_id")

  Database.db.country_scores.drop_indexes()
  Database.db.country_scores.ensure_index("_id")

  questions = list(Database.db.questions.find())  # Need to cast into list to not run into end of cursor
  print len(questions), 'questions found in the db'

  images = Database.db.gifs.find()
  image_ids = [str(e['_id']) for e in images]

  chunk_size = 100
  for image_id_chunk in chunks(image_ids, chunk_size):
    result = Database._add_score(image_id_chunk, questions, countries)
    print 'Processing %s images with %s questions' % (chunk_size, len(questions))
  print 'Finished processing', len(image_ids), 'inserts'