code: def is_study_done(self, study_name):
      study = self.get_study_by_name(study_name)
      is_completed = True
  
      if study.status == "Completed":
          return True
  
      trials = self.list_trials(study_name)
  
      if len(trials) == 0:
          return False
  
      for trial in trials:
          if trial.status != "Completed":
              return False
  
      url = "{}/suggestion/v1/studies/{}".format(
          self.endpoint, trial.study_name
      )
      request_data = {"status": "Completed"}
      response = requests.put(url, json=request_data)
  
      return is_completed
  
imports: import os
  import json
  import requests
  from .model import Study
  from .model import Trial
  from .model import TrialMetric
label_desc: Use image node_id 7 for calling the AdvisorClient obj's underlying member method code with example usage: obj.is_study_done(study_name) and returns: is_completed, True, False, False