class_docstr: Base class which is used to run submissions.
class_docstr_tok: ["Base","class","which","is","used","to","run","submissions","."]
docstr: Creates a temporary copy of extracted submission.
  
  When executed, submission is allowed to modify it's own directory. So
  to ensure that submission does not pass any data between runs, new
  copy of the submission is made before each run. After a run temporary copy
  of submission is deleted.
  
  Returns:
    directory where temporary copy is located
docstr_tok: ["Creates","a","temporary","copy","of","extracted","submission",".","When","executed",",","submission","is","allowed","to","modify","it","'s","own","directory",".","So","to","ensure","that","submission","does","not","pass","any","data","between","runs",",","new","copy","of","the","submission","is","made","before","each","run",".","After","a","run","temporary","copy","of","submission","is","deleted",".","Returns",":","directory","where","temporary","copy","is","located"]
code: def temp_copy_extracted_submission(self):
      """Creates a temporary copy of extracted submission.
  
      When executed, submission is allowed to modify it's own directory. So
      to ensure that submission does not pass any data between runs, new
      copy of the submission is made before each run. After a run temporary copy
      of submission is deleted.
  
      Returns:
        directory where temporary copy is located
      """
      tmp_copy_dir = os.path.join(self.submission_dir, "tmp_copy")
      shell_call(
          [
              "cp",
              "-R",
              os.path.join(self.extracted_submission_dir),
              tmp_copy_dir,
          ]
      )
      return tmp_copy_dir
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from builtins import int
  import argparse
  import json
  import logging
  import os
  import random
  import shutil
  import subprocess
  import time
  import uuid
  from six import iteritems
  import eval_lib
  from cleverhans.utils import shell_call
label_desc: Use image node_id 3 for calling the ExecutableSubmission obj's underlying member method code with example usage: obj.temp_copy_extracted_submission() and returns: tmp_copy_dir