def solve(self):
if self.solve_begun:<EOL><INDENT>raise ResolveError("<STR_LIT>"<EOL>"<STR_LIT>")<EOL><DEDENT>t1 = time.time()<EOL>pt1 = package_repo_stats.package_load_time<EOL>while self.status == SolverStatus.unsolved:<EOL><INDENT>self.solve_step()<EOL>if self.status == SolverStatus.unsolved and not self._do_callback():<EOL><INDENT>break<EOL><DEDENT><DEDENT>self.load_time = package_repo_stats.package_load_time - pt1<EOL>self.solve_time = time.time() - t1<EOL>if self.pr.verbosity > <NUM_LIT:2>:<EOL><INDENT>from pprint import pformat<EOL>self.pr.subheader("<STR_LIT>")<EOL>self.pr(pformat(self.solve_stats))<EOL><DEDENT>elif self.print_stats:<EOL><INDENT>from pprint import pformat<EOL>data = {"<STR_LIT>": self.solve_stats}<EOL>print(pformat(data), file=(self.buf or sys.stdout))<EOL><DEDENT>
Attempt to solve the request.