

'''simple docstring'''







from json import JSONDecodeError  # Workaround for requests.exceptions.JSONDecodeError

import requests
def  UpperCAmelCase__      ( UpperCAmelCase__ = "isbn/0140328726"			)     ->     dict:
       A_		   = olid.strip().strip("""/"""			)  # Remove leading/trailing whitespace & slashes
       if new_olid.count("""/"""			) != 1:
              A_		   = F'''{olid} is not a valid Open Library olid'''
              raise ValueError(UpperCAmelCase__			)
       return requests.get(F'''https://openlibrary.org/{new_olid}.json'''			).json()
def  UpperCAmelCase__      ( UpperCAmelCase__			)     ->     dict:
       A_		   = {
           """title""": """Title""",
           """publish_date""": """Publish date""",
           """authors""": """Authors""",
           """number_of_pages""": """Number of pages:""",
           """first_sentence""": """First sentence""",
           """isbn_10""": """ISBN (10)""",
           """isbn_13""": """ISBN (13)""",
       }
       A_		   = {better_key: ol_book_data[key] for key, better_key in desired_keys.items()}
       A_		   = [
           get_openlibrary_data(author["""key"""]			)["""name"""] for author in data["""Authors"""]
       ]
       A_		   = data["""First sentence"""]["""value"""]
       for key, value in data.items():
              if isinstance(UpperCAmelCase__,    UpperCAmelCase__			):
                     A_		   = """, """.join(UpperCAmelCase__			)
       return data


if __name__ == "__main__":
      import doctest

      doctest.testmod()

      while True:
            __lowerCamelCase						    =      input('''\nEnter the ISBN code to search (or \'quit\' to stop): ''').strip()
            if isbn.lower() in ("", "q", "quit", "exit", "stop"):
                  break

            if len(isbn) not in (10, 13) or not isbn.isdigit():
                  print(f"""Sorry, {isbn} is not a valid ISBN.  Please, input a valid ISBN.""")
                  continue

            print(f"""\nSearching Open Library for ISBN: {isbn}...\n""")

            try:
                  __lowerCamelCase						    =      summarize_book(get_openlibrary_data(f"""isbn/{isbn}"""))
                  print('''\n'''.join(f"""{key}: {value}""" for key, value in book_summary.items()))
            except JSONDecodeError:  # Workaround for requests.exceptions.RequestException:
                  print(f"""Sorry, there are no results for ISBN: {isbn}.""")



'''simple docstring'''







def  UpperCAmelCase__      ( UpperCAmelCase__ = 1_00			)     ->     int:
       A_		   = n * (n + 1) * (2 * n + 1) / 6
       A_		   = (n * (n + 1) / 2) ** 2
       return int(square_of_sum - sum_of_squares			)


if __name__ == "__main__":
      print(f"""{solution() = }""")
