diff --git a/Makefile b/Makefile index 3033251..6527b1e 100644 --- a/Makefile +++ b/Makefile @@ -16,10 +16,7 @@ audit: docs: docs/index.html docs/index.html: $(source) README.md - pdoc --docformat "restructuredtext" ./arxiv/arxiv.py -o docs - mv docs/arxiv/arxiv.html docs/index.html - rmdir docs/arxiv - rm docs/search.json + pdoc --docformat "restructuredtext" ./arxiv -o docs clean: rm -rf build dist diff --git a/arxiv/__init__.py b/arxiv/__init__.py index 318c6b5..d587449 100644 --- a/arxiv/__init__.py +++ b/arxiv/__init__.py @@ -1,2 +1,3 @@ +""".. include:: ../README.md""" # flake8: noqa from .arxiv import * \ No newline at end of file diff --git a/arxiv/api.py b/arxiv/api.py new file mode 100644 index 0000000..0926517 --- /dev/null +++ b/arxiv/api.py @@ -0,0 +1,788 @@ +import logging +import time +import feedparser +import re +import os +import warnings + +from urllib.parse import urlencode +from urllib.request import urlretrieve +from datetime import datetime, timedelta, timezone +from calendar import timegm + +from enum import Enum +from typing import Dict, Generator, List + +logger = logging.getLogger(__name__) + +_DEFAULT_TIME = datetime.min + + +class Result(object): + """ + An entry in an arXiv query results feed. + + See [the arXiv API User's Manual: Details of Atom Results + Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned). + """ + + entry_id: str + """A url of the form `http://arxiv.org/abs/{id}`.""" + updated: time.struct_time + """When the result was last updated.""" + published: time.struct_time + """When the result was originally published.""" + title: str + """The title of the result.""" + authors: list + """The result's authors.""" + summary: str + """The result abstrace.""" + comment: str + """The authors' comment if present.""" + journal_ref: str + """A journal reference if present.""" + doi: str + """A URL for the resolved DOI to an external resource if present.""" + primary_category: str + """ + The result's primary arXiv category. See [arXiv: Category + Taxonomy](https://arxiv.org/category_taxonomy). + """ + categories: List[str] + """ + All of the result's categories. See [arXiv: Category + Taxonomy](https://arxiv.org/category_taxonomy). + """ + links: list + """Up to three URLs associated with this result.""" + pdf_url: str + """The URL of a PDF version of this result if present among links.""" + _raw: feedparser.FeedParserDict + """ + The raw feedparser result object if this Result was constructed with + Result._from_feed_entry. + """ + + def __init__( + self, + entry_id: str, + updated: datetime = _DEFAULT_TIME, + published: datetime = _DEFAULT_TIME, + title: str = "", + authors: List['Result.Author'] = [], + summary: str = "", + comment: str = "", + journal_ref: str = "", + doi: str = "", + primary_category: str = "", + categories: List[str] = [], + links: List['Result.Link'] = [], + _raw: feedparser.FeedParserDict = None, + ): + """ + Constructs an arXiv search result item. + + In most cases, prefer using `Result._from_feed_entry` to parsing and + constructing `Result`s yourself. + """ + self.entry_id = entry_id + self.updated = updated + self.published = published + self.title = title + self.authors = authors + self.summary = summary + self.comment = comment + self.journal_ref = journal_ref + self.doi = doi + self.primary_category = primary_category + self.categories = categories + self.links = links + # Calculated members + self.pdf_url = Result._get_pdf_url(links) + # Debugging + self._raw = _raw + + def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result': + """ + Converts a feedparser entry for an arXiv search result feed into a + Result object. + """ + if not hasattr(entry, "id"): + raise Result.MissingFieldError("id") + # Title attribute may be absent for certain titles. Defaulting to "0" as + # it's the only title observed to cause this bug. + # https://github.com/lukasschwab/arxiv.py/issues/71 + # title = entry.title if hasattr(entry, "title") else "0" + title = "0" + if hasattr(entry, "title"): + title = entry.title + else: + logger.warning( + "Result %s is missing title attribute; defaulting to '0'", + entry.id + ) + return Result( + entry_id=entry.id, + updated=Result._to_datetime(entry.updated_parsed), + published=Result._to_datetime(entry.published_parsed), + title=re.sub(r'\s+', ' ', title), + authors=[Result.Author._from_feed_author(a) for a in entry.authors], + summary=entry.summary, + comment=entry.get('arxiv_comment'), + journal_ref=entry.get('arxiv_journal_ref'), + doi=entry.get('arxiv_doi'), + primary_category=entry.arxiv_primary_category.get('term'), + categories=[tag.get('term') for tag in entry.tags], + links=[Result.Link._from_feed_link(link) for link in entry.links], + _raw=entry + ) + + def __str__(self) -> str: + return self.entry_id + + def __repr__(self) -> str: + return ( + '{}(entry_id={}, updated={}, published={}, title={}, authors={}, ' + 'summary={}, comment={}, journal_ref={}, doi={}, ' + 'primary_category={}, categories={}, links={})' + ).format( + _classname(self), + repr(self.entry_id), + repr(self.updated), + repr(self.published), + repr(self.title), + repr(self.authors), + repr(self.summary), + repr(self.comment), + repr(self.journal_ref), + repr(self.doi), + repr(self.primary_category), + repr(self.categories), + repr(self.links) + ) + + def __eq__(self, other) -> bool: + if isinstance(other, Result): + return self.entry_id == other.entry_id + return False + + def get_short_id(self) -> str: + """ + Returns the short ID for this result. + + + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`, + `result.get_short_id()` returns `2107.05580v1`. + + + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`, + `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March + 2007 arXiv identifier format). + + For an explanation of the difference between arXiv's legacy and current + identifiers, see [Understanding the arXiv + identifier](https://arxiv.org/help/arxiv_identifier). + """ + return self.entry_id.split('arxiv.org/abs/')[-1] + + def _get_default_filename(self, extension: str = "pdf") -> str: + """ + A default `to_filename` function for the extension given. + """ + nonempty_title = self.title if self.title else "UNTITLED" + # Remove disallowed characters. + clean_title = '_'.join(re.findall(r'\w+', nonempty_title)) + return "{}.{}.{}".format(self.get_short_id(), clean_title, extension) + + def download_pdf(self, dirpath: str = './', filename: str = '') -> str: + """ + Downloads the PDF for this result to the specified directory. + + The filename is generated by calling `to_filename(self)`. + """ + if not filename: + filename = self._get_default_filename() + path = os.path.join(dirpath, filename) + written_path, _ = urlretrieve(self.pdf_url, path) + return written_path + + def download_source(self, dirpath: str = './', filename: str = '') -> str: + """ + Downloads the source tarfile for this result to the specified + directory. + + The filename is generated by calling `to_filename(self)`. + """ + if not filename: + filename = self._get_default_filename('tar.gz') + path = os.path.join(dirpath, filename) + # Bodge: construct the source URL from the PDF URL. + source_url = self.pdf_url.replace('/pdf/', '/src/') + written_path, _ = urlretrieve(source_url, path) + return written_path + + def _get_pdf_url(links: list) -> str: + """ + Finds the PDF link among a result's links and returns its URL. + + Should only be called once for a given `Result`, in its constructor. + After construction, the URL should be available in `Result.pdf_url`. + """ + pdf_urls = [link.href for link in links if link.title == 'pdf'] + if len(pdf_urls) == 0: + return None + elif len(pdf_urls) > 1: + logger.warning( + "Result has multiple PDF links; using %s", + pdf_urls[0] + ) + return pdf_urls[0] + + def _to_datetime(ts: time.struct_time) -> datetime: + """ + Converts a UTC time.struct_time into a time-zone-aware datetime. + + This will be replaced with feedparser functionality [when it becomes + available](https://github.com/kurtmckee/feedparser/issues/212). + """ + return datetime.fromtimestamp(timegm(ts), tz=timezone.utc) + + class Author(object): + """ + A light inner class for representing a result's authors. + """ + + name: str + """The author's name.""" + + def __init__(self, name: str): + """ + Constructs an `Author` with the specified name. + + In most cases, prefer using `Author._from_feed_author` to parsing + and constructing `Author`s yourself. + """ + self.name = name + + def _from_feed_author( + feed_author: feedparser.FeedParserDict + ) -> 'Result.Author': + """ + Constructs an `Author` with the name specified in an author object + from a feed entry. + + See usage in `Result._from_feed_entry`. + """ + return Result.Author(feed_author.name) + + def __str__(self) -> str: + return self.name + + def __repr__(self) -> str: + return '{}({})'.format(_classname(self), repr(self.name)) + + def __eq__(self, other) -> bool: + if isinstance(other, Result.Author): + return self.name == other.name + return False + + class Link(object): + """ + A light inner class for representing a result's links. + """ + + href: str + """The link's `href` attribute.""" + title: str + """The link's title.""" + rel: str + """The link's relationship to the `Result`.""" + content_type: str + """The link's HTTP content type.""" + + def __init__( + self, + href: str, + title: str = None, + rel: str = None, + content_type: str = None + ): + """ + Constructs a `Link` with the specified link metadata. + + In most cases, prefer using `Link._from_feed_link` to parsing and + constructing `Link`s yourself. + """ + self.href = href + self.title = title + self.rel = rel + self.content_type = content_type + + def _from_feed_link( + feed_link: feedparser.FeedParserDict + ) -> 'Result.Link': + """ + Constructs a `Link` with link metadata specified in a link object + from a feed entry. + + See usage in `Result._from_feed_entry`. + """ + return Result.Link( + href=feed_link.href, + title=feed_link.get('title'), + rel=feed_link.get('rel'), + content_type=feed_link.get('content_type') + ) + + def __str__(self) -> str: + return self.href + + def __repr__(self) -> str: + return '{}({}, title={}, rel={}, content_type={})'.format( + _classname(self), + repr(self.href), + repr(self.title), + repr(self.rel), + repr(self.content_type) + ) + + def __eq__(self, other) -> bool: + if isinstance(other, Result.Link): + return self.href == other.href + return False + + class MissingFieldError(Exception): + """ + An error indicating an entry is unparseable because it lacks required + fields. + """ + + missing_field: str + """The required field missing from the would-be entry.""" + message: str + """Message describing what caused this error.""" + + def __init__(self, missing_field): + self.missing_field = missing_field + self.message = "Entry from arXiv missing required info" + + def __repr__(self) -> str: + return '{}({})'.format( + _classname(self), + repr(self.missing_field) + ) + + +class SortCriterion(Enum): + """ + A SortCriterion identifies a property by which search results can be + sorted. + + See [the arXiv API User's Manual: sort order for return + results](https://arxiv.org/help/api/user-manual#sort). + """ + Relevance = "relevance" + LastUpdatedDate = "lastUpdatedDate" + SubmittedDate = "submittedDate" + + +class SortOrder(Enum): + """ + A SortOrder indicates order in which search results are sorted according + to the specified arxiv.SortCriterion. + + See [the arXiv API User's Manual: sort order for return + results](https://arxiv.org/help/api/user-manual#sort). + """ + Ascending = "ascending" + Descending = "descending" + + +class Search(object): + """ + A specification for a search of arXiv's database. + + To run a search, use `Search.run` to use a default client or `Client.run` + with a specific client. + """ + + query: str + """ + A query string. + + See [the arXiv API User's Manual: Details of Query + Construction](https://arxiv.org/help/api/user-manual#query_details). + """ + id_list: list + """ + A list of arXiv article IDs to which to limit the search. + + See [the arXiv API User's + Manual](https://arxiv.org/help/api/user-manual#search_query_and_id_list) + for documentation of the interaction between `query` and `id_list`. + """ + max_results: float + """ + The maximum number of results to be returned in an execution of this + search. + + To fetch every result available, set `max_results=float('inf')`. + """ + sort_by: SortCriterion + """The sort criterion for results.""" + sort_order: SortOrder + """The sort order for results.""" + + def __init__( + self, + query: str = "", + id_list: List[str] = [], + max_results: float = float('inf'), + sort_by: SortCriterion = SortCriterion.Relevance, + sort_order: SortOrder = SortOrder.Descending + ): + """ + Constructs an arXiv API search with the specified criteria. + """ + self.query = query + self.id_list = id_list + self.max_results = max_results + self.sort_by = sort_by + self.sort_order = sort_order + + def __str__(self) -> str: + # TODO: develop a more informative string representation. + return repr(self) + + def __repr__(self) -> str: + return ( + '{}(query={}, id_list={}, max_results={}, sort_by={}, ' + 'sort_order={})' + ).format( + _classname(self), + repr(self.query), + repr(self.id_list), + repr(self.max_results), + repr(self.sort_by), + repr(self.sort_order) + ) + + def _url_args(self) -> Dict[str, str]: + """ + Returns a dict of search parameters that should be included in an API + request for this search. + """ + return { + "search_query": self.query, + "id_list": ','.join(self.id_list), + "sortBy": self.sort_by.value, + "sortOrder": self.sort_order.value + } + + def get(self) -> Generator[Result, None, None]: + """ + **Deprecated** after 1.2.0; use `Search.results`. + """ + warnings.warn( + "The 'get' method is deprecated, use 'results' instead", + DeprecationWarning, + stacklevel=2 + ) + return self.results() + + def results(self) -> Generator[Result, None, None]: + """ + Executes the specified search using a default arXiv API client. + + For info on default behavior, see `Client.__init__` and `Client.results`. + """ + return Client().results(self) + + +class Client(object): + """ + Specifies a strategy for fetching results from arXiv's API. + + This class obscures pagination and retry logic, and exposes + `Client.results`. + """ + + query_url_format = 'http://export.arxiv.org/api/query?{}' + """The arXiv query API endpoint format.""" + page_size: int + """Maximum number of results fetched in a single API request.""" + delay_seconds: int + """Number of seconds to wait between API requests.""" + num_retries: int + """Number of times to retry a failing API request.""" + _last_request_dt: datetime + + def __init__( + self, + page_size: int = 100, + delay_seconds: int = 3, + num_retries: int = 3 + ): + """ + Constructs an arXiv API client with the specified options. + + Note: the default parameters should provide a robust request strategy + for most use cases. Extreme page sizes, delays, or retries risk + violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou), + brittle behavior, and inconsistent results. + """ + self.page_size = page_size + self.delay_seconds = delay_seconds + self.num_retries = num_retries + self._last_request_dt = None + + def __str__(self) -> str: + # TODO: develop a more informative string representation. + return repr(self) + + def __repr__(self) -> str: + return '{}(page_size={}, delay_seconds={}, num_retries={})'.format( + _classname(self), + repr(self.page_size), + repr(self.delay_seconds), + repr(self.num_retries) + ) + + def get(self, search: Search) -> Generator[Result, None, None]: + """ + **Deprecated** after 1.2.0; use `Client.results`. + """ + warnings.warn( + "The 'get' method is deprecated, use 'results' instead", + DeprecationWarning, + stacklevel=2 + ) + return self.results(search) + + def results(self, search: Search) -> Generator[Result, None, None]: + """ + Uses this client configuration to fetch one page of the search results + at a time, yielding the parsed `Result`s, until `max_results` results + have been yielded or there are no more search results. + + If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`. + + For more on using generators, see + [Generators](https://wiki.python.org/moin/Generators). + """ + offset = 0 + # total_results may be reduced according to the feed's + # opensearch:totalResults value. + total_results = search.max_results + first_page = True + while offset < total_results: + page_size = min(self.page_size, search.max_results - offset) + logger.info("Requesting {} results at offset {}".format( + page_size, + offset, + )) + page_url = self._format_url(search, offset, page_size) + feed = self._parse_feed(page_url, first_page) + if first_page: + # NOTE: this is an ugly fix for a known bug. The totalresults + # value is set to 1 for results with zero entries. If that API + # bug is fixed, we can remove this conditional and always set + # `total_results = min(...)`. + if len(feed.entries) == 0: + logger.info("Got empty results; stopping generation") + total_results = 0 + else: + total_results = min( + total_results, + int(feed.feed.opensearch_totalresults) + ) + logger.info("Got first page; {} of {} results available".format( + total_results, + search.max_results + )) + # Subsequent pages are not the first page. + first_page = False + # Update offset for next request: account for received results. + offset += len(feed.entries) + # Yield query results until page is exhausted. + for entry in feed.entries: + try: + yield Result._from_feed_entry(entry) + except Result.MissingFieldError: + logger.warning("Skipping partial result") + continue + + def _format_url(self, search: Search, start: int, page_size: int) -> str: + """ + Construct a request API for search that returns up to `page_size` + results starting with the result at index `start`. + """ + url_args = search._url_args() + url_args.update({ + "start": start, + "max_results": page_size, + }) + return self.query_url_format.format(urlencode(url_args)) + + def _parse_feed( + self, + url: str, + first_page: bool = True + ) -> feedparser.FeedParserDict: + """ + Fetches the specified URL and parses it with feedparser. + + If a request fails or is unexpectedly empty, retries the request up to + `self.num_retries` times. + """ + # Invoke the recursive helper with initial available retries. + return self.__try_parse_feed( + url, + first_page=first_page, + retries_left=self.num_retries + ) + + def __try_parse_feed( + self, + url: str, + first_page: bool, + retries_left: int, + last_err: Exception = None, + ) -> feedparser.FeedParserDict: + """ + Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that + number of seconds has not passed since `_parse_feed` was last called, + sleeps until delay_seconds seconds have passed. + """ + retry = self.num_retries - retries_left + # If this call would violate the rate limit, sleep until it doesn't. + if self._last_request_dt is not None: + required = timedelta(seconds=self.delay_seconds) + since_last_request = datetime.now() - self._last_request_dt + if since_last_request < required: + to_sleep = (required - since_last_request).total_seconds() + logger.info("Sleeping for %f seconds", to_sleep) + time.sleep(to_sleep) + logger.info("Requesting page of results", extra={ + 'url': url, + 'first_page': first_page, + 'retry': retry, + 'last_err': last_err.message if last_err is not None else None, + }) + feed = feedparser.parse(url) + self._last_request_dt = datetime.now() + err = None + if feed.status != 200: + err = HTTPError(url, retry, feed) + elif len(feed.entries) == 0 and not first_page: + err = UnexpectedEmptyPageError(url, retry) + if err is not None: + if retries_left > 0: + return self.__try_parse_feed( + url, + first_page=first_page, + retries_left=retries_left-1, + last_err=err, + ) + # Feed was never returned in self.num_retries tries. Raise the last + # exception encountered. + raise err + return feed + + +class ArxivError(Exception): + """This package's base Exception class.""" + + url: str + """The feed URL that could not be fetched.""" + retry: int + """ + The request try number which encountered this error; 0 for the initial try, + 1 for the first retry, and so on. + """ + message: str + """Message describing what caused this error.""" + + def __init__(self, url: str, retry: int, message: str): + """ + Constructs an `ArxivError` encountered while fetching the specified URL. + """ + self.url = url + self.retry = retry + self.message = message + super().__init__(self.message) + + def __str__(self) -> str: + return '{} ({})'.format(self.message, self.url) + + +class UnexpectedEmptyPageError(ArxivError): + """ + An error raised when a page of results that should be non-empty is empty. + + This should never happen in theory, but happens sporadically due to + brittleness in the underlying arXiv API; usually resolved by retries. + + See `Client.results` for usage. + """ + def __init__(self, url: str, retry: int): + """ + Constructs an `UnexpectedEmptyPageError` encountered for the specified + API URL after `retry` tries. + """ + self.url = url + super().__init__(url, retry, "Page of results was unexpectedly empty") + + def __repr__(self) -> str: + return '{}({}, {})'.format( + _classname(self), + repr(self.url), + repr(self.retry) + ) + + +class HTTPError(ArxivError): + """ + A non-200 status encountered while fetching a page of results. + + See `Client.results` for usage. + """ + + status: int + """The HTTP status reported by feedparser.""" + entry: feedparser.FeedParserDict + """The feed entry describing the error, if present.""" + + def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict): + """ + Constructs an `HTTPError` for the specified status code, encountered for + the specified API URL after `retry` tries. + """ + self.url = url + self.status = feed.status + # If the feed is valid and includes a single entry, trust it's an + # explanation. + if not feed.bozo and len(feed.entries) == 1: + self.entry = feed.entries[0] + else: + self.entry = None + super().__init__( + url, + retry, + "Page request resulted in HTTP {}: {}".format( + self.status, + self.entry.summary if self.entry else None, + ), + ) + + def __repr__(self) -> str: + return '{}({}, {}, {})'.format( + _classname(self), + repr(self.url), + repr(self.retry), + repr(self.status) + ) + + +def _classname(o): + """A helper function for use in __repr__ methods: arxiv.Result.Link.""" + return 'arxiv.{}'.format(o.__class__.__qualname__) diff --git a/arxiv/arxiv.py b/arxiv/arxiv.py index 263ed9f..75254ba 100644 --- a/arxiv/arxiv.py +++ b/arxiv/arxiv.py @@ -1,789 +1,9 @@ -""".. include:: ../README.md""" -import logging -import time -import feedparser -import re -import os -import warnings - -from urllib.parse import urlencode -from urllib.request import urlretrieve -from datetime import datetime, timedelta, timezone -from calendar import timegm - -from enum import Enum -from typing import Dict, Generator, List - -logger = logging.getLogger(__name__) - -_DEFAULT_TIME = datetime.min - - -class Result(object): - """ - An entry in an arXiv query results feed. - - See [the arXiv API User's Manual: Details of Atom Results - Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned). - """ - - entry_id: str - """A url of the form `http://arxiv.org/abs/{id}`.""" - updated: time.struct_time - """When the result was last updated.""" - published: time.struct_time - """When the result was originally published.""" - title: str - """The title of the result.""" - authors: list - """The result's authors.""" - summary: str - """The result abstrace.""" - comment: str - """The authors' comment if present.""" - journal_ref: str - """A journal reference if present.""" - doi: str - """A URL for the resolved DOI to an external resource if present.""" - primary_category: str - """ - The result's primary arXiv category. See [arXiv: Category - Taxonomy](https://arxiv.org/category_taxonomy). - """ - categories: List[str] - """ - All of the result's categories. See [arXiv: Category - Taxonomy](https://arxiv.org/category_taxonomy). - """ - links: list - """Up to three URLs associated with this result.""" - pdf_url: str - """The URL of a PDF version of this result if present among links.""" - _raw: feedparser.FeedParserDict - """ - The raw feedparser result object if this Result was constructed with - Result._from_feed_entry. - """ - - def __init__( - self, - entry_id: str, - updated: datetime = _DEFAULT_TIME, - published: datetime = _DEFAULT_TIME, - title: str = "", - authors: List['Result.Author'] = [], - summary: str = "", - comment: str = "", - journal_ref: str = "", - doi: str = "", - primary_category: str = "", - categories: List[str] = [], - links: List['Result.Link'] = [], - _raw: feedparser.FeedParserDict = None, - ): - """ - Constructs an arXiv search result item. - - In most cases, prefer using `Result._from_feed_entry` to parsing and - constructing `Result`s yourself. - """ - self.entry_id = entry_id - self.updated = updated - self.published = published - self.title = title - self.authors = authors - self.summary = summary - self.comment = comment - self.journal_ref = journal_ref - self.doi = doi - self.primary_category = primary_category - self.categories = categories - self.links = links - # Calculated members - self.pdf_url = Result._get_pdf_url(links) - # Debugging - self._raw = _raw - - def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result': - """ - Converts a feedparser entry for an arXiv search result feed into a - Result object. - """ - if not hasattr(entry, "id"): - raise Result.MissingFieldError("id") - # Title attribute may be absent for certain titles. Defaulting to "0" as - # it's the only title observed to cause this bug. - # https://github.com/lukasschwab/arxiv.py/issues/71 - # title = entry.title if hasattr(entry, "title") else "0" - title = "0" - if hasattr(entry, "title"): - title = entry.title - else: - logger.warning( - "Result %s is missing title attribute; defaulting to '0'", - entry.id - ) - return Result( - entry_id=entry.id, - updated=Result._to_datetime(entry.updated_parsed), - published=Result._to_datetime(entry.published_parsed), - title=re.sub(r'\s+', ' ', title), - authors=[Result.Author._from_feed_author(a) for a in entry.authors], - summary=entry.summary, - comment=entry.get('arxiv_comment'), - journal_ref=entry.get('arxiv_journal_ref'), - doi=entry.get('arxiv_doi'), - primary_category=entry.arxiv_primary_category.get('term'), - categories=[tag.get('term') for tag in entry.tags], - links=[Result.Link._from_feed_link(link) for link in entry.links], - _raw=entry - ) - - def __str__(self) -> str: - return self.entry_id - - def __repr__(self) -> str: - return ( - '{}(entry_id={}, updated={}, published={}, title={}, authors={}, ' - 'summary={}, comment={}, journal_ref={}, doi={}, ' - 'primary_category={}, categories={}, links={})' - ).format( - _classname(self), - repr(self.entry_id), - repr(self.updated), - repr(self.published), - repr(self.title), - repr(self.authors), - repr(self.summary), - repr(self.comment), - repr(self.journal_ref), - repr(self.doi), - repr(self.primary_category), - repr(self.categories), - repr(self.links) - ) - - def __eq__(self, other) -> bool: - if isinstance(other, Result): - return self.entry_id == other.entry_id - return False - - def get_short_id(self) -> str: - """ - Returns the short ID for this result. - - + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`, - `result.get_short_id()` returns `2107.05580v1`. - - + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`, - `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March - 2007 arXiv identifier format). - - For an explanation of the difference between arXiv's legacy and current - identifiers, see [Understanding the arXiv - identifier](https://arxiv.org/help/arxiv_identifier). - """ - return self.entry_id.split('arxiv.org/abs/')[-1] - - def _get_default_filename(self, extension: str = "pdf") -> str: - """ - A default `to_filename` function for the extension given. - """ - nonempty_title = self.title if self.title else "UNTITLED" - # Remove disallowed characters. - clean_title = '_'.join(re.findall(r'\w+', nonempty_title)) - return "{}.{}.{}".format(self.get_short_id(), clean_title, extension) - - def download_pdf(self, dirpath: str = './', filename: str = '') -> str: - """ - Downloads the PDF for this result to the specified directory. - - The filename is generated by calling `to_filename(self)`. - """ - if not filename: - filename = self._get_default_filename() - path = os.path.join(dirpath, filename) - written_path, _ = urlretrieve(self.pdf_url, path) - return written_path - - def download_source(self, dirpath: str = './', filename: str = '') -> str: - """ - Downloads the source tarfile for this result to the specified - directory. - - The filename is generated by calling `to_filename(self)`. - """ - if not filename: - filename = self._get_default_filename('tar.gz') - path = os.path.join(dirpath, filename) - # Bodge: construct the source URL from the PDF URL. - source_url = self.pdf_url.replace('/pdf/', '/src/') - written_path, _ = urlretrieve(source_url, path) - return written_path - - def _get_pdf_url(links: list) -> str: - """ - Finds the PDF link among a result's links and returns its URL. - - Should only be called once for a given `Result`, in its constructor. - After construction, the URL should be available in `Result.pdf_url`. - """ - pdf_urls = [link.href for link in links if link.title == 'pdf'] - if len(pdf_urls) == 0: - return None - elif len(pdf_urls) > 1: - logger.warning( - "Result has multiple PDF links; using %s", - pdf_urls[0] - ) - return pdf_urls[0] - - def _to_datetime(ts: time.struct_time) -> datetime: - """ - Converts a UTC time.struct_time into a time-zone-aware datetime. - - This will be replaced with feedparser functionality [when it becomes - available](https://github.com/kurtmckee/feedparser/issues/212). - """ - return datetime.fromtimestamp(timegm(ts), tz=timezone.utc) - - class Author(object): - """ - A light inner class for representing a result's authors. - """ - - name: str - """The author's name.""" - - def __init__(self, name: str): - """ - Constructs an `Author` with the specified name. - - In most cases, prefer using `Author._from_feed_author` to parsing - and constructing `Author`s yourself. - """ - self.name = name - - def _from_feed_author( - feed_author: feedparser.FeedParserDict - ) -> 'Result.Author': - """ - Constructs an `Author` with the name specified in an author object - from a feed entry. - - See usage in `Result._from_feed_entry`. - """ - return Result.Author(feed_author.name) - - def __str__(self) -> str: - return self.name - - def __repr__(self) -> str: - return '{}({})'.format(_classname(self), repr(self.name)) - - def __eq__(self, other) -> bool: - if isinstance(other, Result.Author): - return self.name == other.name - return False - - class Link(object): - """ - A light inner class for representing a result's links. - """ - - href: str - """The link's `href` attribute.""" - title: str - """The link's title.""" - rel: str - """The link's relationship to the `Result`.""" - content_type: str - """The link's HTTP content type.""" - - def __init__( - self, - href: str, - title: str = None, - rel: str = None, - content_type: str = None - ): - """ - Constructs a `Link` with the specified link metadata. - - In most cases, prefer using `Link._from_feed_link` to parsing and - constructing `Link`s yourself. - """ - self.href = href - self.title = title - self.rel = rel - self.content_type = content_type - - def _from_feed_link( - feed_link: feedparser.FeedParserDict - ) -> 'Result.Link': - """ - Constructs a `Link` with link metadata specified in a link object - from a feed entry. - - See usage in `Result._from_feed_entry`. - """ - return Result.Link( - href=feed_link.href, - title=feed_link.get('title'), - rel=feed_link.get('rel'), - content_type=feed_link.get('content_type') - ) - - def __str__(self) -> str: - return self.href - - def __repr__(self) -> str: - return '{}({}, title={}, rel={}, content_type={})'.format( - _classname(self), - repr(self.href), - repr(self.title), - repr(self.rel), - repr(self.content_type) - ) - - def __eq__(self, other) -> bool: - if isinstance(other, Result.Link): - return self.href == other.href - return False - - class MissingFieldError(Exception): - """ - An error indicating an entry is unparseable because it lacks required - fields. - """ - - missing_field: str - """The required field missing from the would-be entry.""" - message: str - """Message describing what caused this error.""" - - def __init__(self, missing_field): - self.missing_field = missing_field - self.message = "Entry from arXiv missing required info" - - def __repr__(self) -> str: - return '{}({})'.format( - _classname(self), - repr(self.missing_field) - ) - - -class SortCriterion(Enum): - """ - A SortCriterion identifies a property by which search results can be - sorted. +# flake8:noqa +from .api import * - See [the arXiv API User's Manual: sort order for return - results](https://arxiv.org/help/api/user-manual#sort). - """ - Relevance = "relevance" - LastUpdatedDate = "lastUpdatedDate" - SubmittedDate = "submittedDate" - - -class SortOrder(Enum): - """ - A SortOrder indicates order in which search results are sorted according - to the specified arxiv.SortCriterion. - - See [the arXiv API User's Manual: sort order for return - results](https://arxiv.org/help/api/user-manual#sort). - """ - Ascending = "ascending" - Descending = "descending" - - -class Search(object): - """ - A specification for a search of arXiv's database. - - To run a search, use `Search.run` to use a default client or `Client.run` - with a specific client. - """ - - query: str - """ - A query string. - - See [the arXiv API User's Manual: Details of Query - Construction](https://arxiv.org/help/api/user-manual#query_details). - """ - id_list: list - """ - A list of arXiv article IDs to which to limit the search. - - See [the arXiv API User's - Manual](https://arxiv.org/help/api/user-manual#search_query_and_id_list) - for documentation of the interaction between `query` and `id_list`. - """ - max_results: float - """ - The maximum number of results to be returned in an execution of this - search. - - To fetch every result available, set `max_results=float('inf')`. - """ - sort_by: SortCriterion - """The sort criterion for results.""" - sort_order: SortOrder - """The sort order for results.""" - - def __init__( - self, - query: str = "", - id_list: List[str] = [], - max_results: float = float('inf'), - sort_by: SortCriterion = SortCriterion.Relevance, - sort_order: SortOrder = SortOrder.Descending - ): - """ - Constructs an arXiv API search with the specified criteria. - """ - self.query = query - self.id_list = id_list - self.max_results = max_results - self.sort_by = sort_by - self.sort_order = sort_order - - def __str__(self) -> str: - # TODO: develop a more informative string representation. - return repr(self) - - def __repr__(self) -> str: - return ( - '{}(query={}, id_list={}, max_results={}, sort_by={}, ' - 'sort_order={})' - ).format( - _classname(self), - repr(self.query), - repr(self.id_list), - repr(self.max_results), - repr(self.sort_by), - repr(self.sort_order) - ) - - def _url_args(self) -> Dict[str, str]: - """ - Returns a dict of search parameters that should be included in an API - request for this search. - """ - return { - "search_query": self.query, - "id_list": ','.join(self.id_list), - "sortBy": self.sort_by.value, - "sortOrder": self.sort_order.value - } - - def get(self) -> Generator[Result, None, None]: - """ - **Deprecated** after 1.2.0; use `Search.results`. - """ - warnings.warn( - "The 'get' method is deprecated, use 'results' instead", - DeprecationWarning, - stacklevel=2 - ) - return self.results() - - def results(self) -> Generator[Result, None, None]: - """ - Executes the specified search using a default arXiv API client. - - For info on default behavior, see `Client.__init__` and `Client.results`. - """ - return Client().results(self) - - -class Client(object): - """ - Specifies a strategy for fetching results from arXiv's API. - - This class obscures pagination and retry logic, and exposes - `Client.results`. - """ - - query_url_format = 'http://export.arxiv.org/api/query?{}' - """The arXiv query API endpoint format.""" - page_size: int - """Maximum number of results fetched in a single API request.""" - delay_seconds: int - """Number of seconds to wait between API requests.""" - num_retries: int - """Number of times to retry a failing API request.""" - _last_request_dt: datetime - - def __init__( - self, - page_size: int = 100, - delay_seconds: int = 3, - num_retries: int = 3 - ): - """ - Constructs an arXiv API client with the specified options. - - Note: the default parameters should provide a robust request strategy - for most use cases. Extreme page sizes, delays, or retries risk - violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou), - brittle behavior, and inconsistent results. - """ - self.page_size = page_size - self.delay_seconds = delay_seconds - self.num_retries = num_retries - self._last_request_dt = None - - def __str__(self) -> str: - # TODO: develop a more informative string representation. - return repr(self) - - def __repr__(self) -> str: - return '{}(page_size={}, delay_seconds={}, num_retries={})'.format( - _classname(self), - repr(self.page_size), - repr(self.delay_seconds), - repr(self.num_retries) - ) - - def get(self, search: Search) -> Generator[Result, None, None]: - """ - **Deprecated** after 1.2.0; use `Client.results`. - """ - warnings.warn( - "The 'get' method is deprecated, use 'results' instead", - DeprecationWarning, - stacklevel=2 - ) - return self.results(search) - - def results(self, search: Search) -> Generator[Result, None, None]: - """ - Uses this client configuration to fetch one page of the search results - at a time, yielding the parsed `Result`s, until `max_results` results - have been yielded or there are no more search results. - - If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`. - - For more on using generators, see - [Generators](https://wiki.python.org/moin/Generators). - """ - offset = 0 - # total_results may be reduced according to the feed's - # opensearch:totalResults value. - total_results = search.max_results - first_page = True - while offset < total_results: - page_size = min(self.page_size, search.max_results - offset) - logger.info("Requesting {} results at offset {}".format( - page_size, - offset, - )) - page_url = self._format_url(search, offset, page_size) - feed = self._parse_feed(page_url, first_page) - if first_page: - # NOTE: this is an ugly fix for a known bug. The totalresults - # value is set to 1 for results with zero entries. If that API - # bug is fixed, we can remove this conditional and always set - # `total_results = min(...)`. - if len(feed.entries) == 0: - logger.info("Got empty results; stopping generation") - total_results = 0 - else: - total_results = min( - total_results, - int(feed.feed.opensearch_totalresults) - ) - logger.info("Got first page; {} of {} results available".format( - total_results, - search.max_results - )) - # Subsequent pages are not the first page. - first_page = False - # Update offset for next request: account for received results. - offset += len(feed.entries) - # Yield query results until page is exhausted. - for entry in feed.entries: - try: - yield Result._from_feed_entry(entry) - except Result.MissingFieldError: - logger.warning("Skipping partial result") - continue - - def _format_url(self, search: Search, start: int, page_size: int) -> str: - """ - Construct a request API for search that returns up to `page_size` - results starting with the result at index `start`. - """ - url_args = search._url_args() - url_args.update({ - "start": start, - "max_results": page_size, - }) - return self.query_url_format.format(urlencode(url_args)) - - def _parse_feed( - self, - url: str, - first_page: bool = True - ) -> feedparser.FeedParserDict: - """ - Fetches the specified URL and parses it with feedparser. - - If a request fails or is unexpectedly empty, retries the request up to - `self.num_retries` times. - """ - # Invoke the recursive helper with initial available retries. - return self.__try_parse_feed( - url, - first_page=first_page, - retries_left=self.num_retries - ) - - def __try_parse_feed( - self, - url: str, - first_page: bool, - retries_left: int, - last_err: Exception = None, - ) -> feedparser.FeedParserDict: - """ - Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that - number of seconds has not passed since `_parse_feed` was last called, - sleeps until delay_seconds seconds have passed. - """ - retry = self.num_retries - retries_left - # If this call would violate the rate limit, sleep until it doesn't. - if self._last_request_dt is not None: - required = timedelta(seconds=self.delay_seconds) - since_last_request = datetime.now() - self._last_request_dt - if since_last_request < required: - to_sleep = (required - since_last_request).total_seconds() - logger.info("Sleeping for %f seconds", to_sleep) - time.sleep(to_sleep) - logger.info("Requesting page of results", extra={ - 'url': url, - 'first_page': first_page, - 'retry': retry, - 'last_err': last_err.message if last_err is not None else None, - }) - feed = feedparser.parse(url) - self._last_request_dt = datetime.now() - err = None - if feed.status != 200: - err = HTTPError(url, retry, feed) - elif len(feed.entries) == 0 and not first_page: - err = UnexpectedEmptyPageError(url, retry) - if err is not None: - if retries_left > 0: - return self.__try_parse_feed( - url, - first_page=first_page, - retries_left=retries_left-1, - last_err=err, - ) - # Feed was never returned in self.num_retries tries. Raise the last - # exception encountered. - raise err - return feed - - -class ArxivError(Exception): - """This package's base Exception class.""" - - url: str - """The feed URL that could not be fetched.""" - retry: int - """ - The request try number which encountered this error; 0 for the initial try, - 1 for the first retry, and so on. - """ - message: str - """Message describing what caused this error.""" - - def __init__(self, url: str, retry: int, message: str): - """ - Constructs an `ArxivError` encountered while fetching the specified URL. - """ - self.url = url - self.retry = retry - self.message = message - super().__init__(self.message) - - def __str__(self) -> str: - return '{} ({})'.format(self.message, self.url) - - -class UnexpectedEmptyPageError(ArxivError): - """ - An error raised when a page of results that should be non-empty is empty. - - This should never happen in theory, but happens sporadically due to - brittleness in the underlying arXiv API; usually resolved by retries. - - See `Client.results` for usage. - """ - def __init__(self, url: str, retry: int): - """ - Constructs an `UnexpectedEmptyPageError` encountered for the specified - API URL after `retry` tries. - """ - self.url = url - super().__init__(url, retry, "Page of results was unexpectedly empty") - - def __repr__(self) -> str: - return '{}({}, {})'.format( - _classname(self), - repr(self.url), - repr(self.retry) - ) - - -class HTTPError(ArxivError): - """ - A non-200 status encountered while fetching a page of results. - - See `Client.results` for usage. - """ - - status: int - """The HTTP status reported by feedparser.""" - entry: feedparser.FeedParserDict - """The feed entry describing the error, if present.""" - - def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict): - """ - Constructs an `HTTPError` for the specified status code, encountered for - the specified API URL after `retry` tries. - """ - self.url = url - self.status = feed.status - # If the feed is valid and includes a single entry, trust it's an - # explanation. - if not feed.bozo and len(feed.entries) == 1: - self.entry = feed.entries[0] - else: - self.entry = None - super().__init__( - url, - retry, - "Page request resulted in HTTP {}: {}".format( - self.status, - self.entry.summary if self.entry else None, - ), - ) - - def __repr__(self) -> str: - return '{}({}, {}, {})'.format( - _classname(self), - repr(self.url), - repr(self.retry), - repr(self.status) - ) - - -def _classname(o): - """A helper function for use in __repr__ methods: arxiv.Result.Link.""" - return 'arxiv.{}'.format(o.__class__.__qualname__) +import warnings +warnings.warn( + "The 'arxiv.arxiv' module is deprecated, use 'arxiv.api' instead", + DeprecationWarning, + stacklevel=2 +) diff --git a/arxiv/category.py b/arxiv/category.py new file mode 100644 index 0000000..fc22c75 --- /dev/null +++ b/arxiv/category.py @@ -0,0 +1,189 @@ +from enum import Enum + +# https://arxiv.org/category_taxonomy +# cath4s = document.getElementsByTagName("h4") +# a = Array.from(cath4s) +# a.shift() +# strs = a.map(h => `${h.children[0].textContent.replace( +# /\W/g, "" +# )} = "${h.firstChild.textContent.trim()}"`) +# console.log(strs.join("\n")) + + +class ComputerScience(Enum): + ArtificialIntelligence = "cs.AI" + HardwareArchitecture = "cs.AR" + ComputationalComplexity = "cs.CC" + ComputationalEngineeringFinanceAndScience = "cs.CE" + ComputationalGeometry = "cs.CG" + ComputationAndLanguage = "cs.CL" + CryptographyAndSecurity = "cs.CR" + ComputerVisionAndPatternRecognition = "cs.CV" + ComputersAndSociety = "cs.CY" + Databases = "cs.DB" + DistributedParallelAndClusterComputing = "cs.DC" + DigitalLibraries = "cs.DL" + DiscreteMathematics = "cs.DM" + DataStructuresAndAlgorithms = "cs.DS" + EmergingTechnologies = "cs.ET" + FormalLanguagesAndAutomataTheory = "cs.FL" + GeneralLiterature = "cs.GL" + Graphics = "cs.GR" + ComputerScienceAndGameTheory = "cs.GT" + HumanComputerInteraction = "cs.HC" + InformationRetrieval = "cs.IR" + MathInformationTheory = "cs.IT" + MachineLearning = "cs.LG" + LogicinComputerScience = "cs.LO" + MultiagentSystems = "cs.MA" + Multimedia = "cs.MM" + MathematicalSoftware = "cs.MS" + NumericalAnalysis = "cs.NA" + NeuralAndEvolutionaryComputing = "cs.NE" + NetworkingAndInternetArchitecture = "cs.NI" + OtherComputerScience = "cs.OH" + OperatingSystems = "cs.OS" + Performance = "cs.PF" + ProgrammingLanguages = "cs.PL" + Robotics = "cs.RO" + SymbolicComputation = "cs.SC" + Sound = "cs.SD" + SoftwareEngineering = "cs.SE" + SocialAndInformationNetworks = "cs.SI" + SystemsAndControl = "cs.SY" + + +class Economics(Enum): + Econometrics = "econ.EM" + GeneralEconomics = "econ.GN" + TheoreticalEconomics = "econ.TH" + + +class ElectricalEngineeringAndSystemsScience(Enum): + AudioAndSpeechProcessing = "eess.AS" + ImageAndVideoProcessing = "eess.IV" + SignalProcessing = "eess.SP" + SystemsAndControl = "eess.SY" + + +class Mathematics(Enum): + CommutativeAlgebra = "math.AC" + AlgebraicGeometry = "math.AG" + AnalysisofPDEs = "math.AP" + AlgebraicTopology = "math.AT" + ClassicalAnalysisandODEs = "math.CA" + Combinatorics = "math.CO" + CategoryTheory = "math.CT" + ComplexVariables = "math.CV" + DifferentialGeometry = "math.DG" + DynamicalSystems = "math.DS" + FunctionalAnalysis = "math.FA" + GeneralMathematics = "math.GM" + GeneralTopology = "math.GN" + GroupTheory = "math.GR" + GeometricTopology = "math.GT" + HistoryandOverview = "math.HO" + MathInformationTheory = "math.IT" + KTheoryandHomology = "math.KT" + Logic = "math.LO" + MetricGeometry = "math.MG" + MathematicalPhysics = "math.MP" + NumericalAnalysis = "math.NA" + NumberTheory = "math.NT" + OperatorAlgebras = "math.OA" + OptimizationandControl = "math.OC" + Probability = "math.PR" + QuantumAlgebra = "math.QA" + RingsandAlgebras = "math.RA" + RepresentationTheory = "math.RT" + SymplecticGeometry = "math.SG" + SpectralTheory = "math.SP" + StatisticsTheory = "math.ST" + + +class Physics(Enum): + CosmologyandNongalacticAstrophysics = "astro-ph.CO" + EarthandPlanetaryAstrophysics = "astro-ph.EP" + AstrophysicsofGalaxies = "astro-ph.GA" + HighEnergyAstrophysicalPhenomena = "astro-ph.HE" + InstrumentationandMethodsforAstrophysics = "astro-ph.IM" + SolarandStellarAstrophysics = "astro-ph.SR" + DisorderedSystemsandNeuralNetworks = "cond-mat.dis-nn" + MesoscaleandNanoscalePhysics = "cond-mat.mes-hall" + MaterialsScience = "cond-mat.mtrl-sci" + OtherCondensedMatter = "cond-mat.other" + QuantumGases = "cond-mat.quant-gas" + SoftCondensedMatter = "cond-mat.soft" + StatisticalMechanics = "cond-mat.stat-mech" + StronglyCorrelatedElectrons = "cond-mat.str-el" + Superconductivity = "cond-mat.supr-con" + GeneralRelativityandQuantumCosmology = "gr-qc" + HighEnergyPhysicsExperiment = "hep-ex" + HighEnergyPhysicsLattice = "hep-lat" + HighEnergyPhysicsPhenomenology = "hep-ph" + HighEnergyPhysicsTheory = "hep-th" + MathematicalPhysics = "math-ph" + AdaptationandSelfOrganizingSystems = "nlin.AO" + ChaoticDynamics = "nlin.CD" + CellularAutomataandLatticeGases = "nlin.CG" + PatternFormationandSolitons = "nlin.PS" + ExactlySolvableandIntegrableSystems = "nlin.SI" + NuclearExperiment = "nucl-ex" + NuclearTheory = "nucl-th" + AcceleratorPhysics = "physics.acc-ph" + AtmosphericandOceanicPhysics = "physics.ao-ph" + AppliedPhysics = "physics.app-ph" + AtomicandMolecularClusters = "physics.atm-clus" + AtomicPhysics = "physics.atom-ph" + BiologicalPhysics = "physics.bio-ph" + ChemicalPhysics = "physics.chem-ph" + ClassicalPhysics = "physics.class-ph" + ComputationalPhysics = "physics.comp-ph" + DataAnalysisStatisticsandProbability = "physics.data-an" + PhysicsEducation = "physics.ed-ph" + FluidDynamics = "physics.flu-dyn" + GeneralPhysics = "physics.gen-ph" + Geophysics = "physics.geo-ph" + HistoryandPhilosophyofPhysics = "physics.hist-ph" + InstrumentationandDetectors = "physics.ins-det" + MedicalPhysics = "physics.med-ph" + Optics = "physics.optics" + PlasmaPhysics = "physics.plasm-ph" + PopularPhysics = "physics.pop-ph" + PhysicsandSociety = "physics.soc-ph" + SpacePhysics = "physics.space-ph" + QuantumPhysics = "quant-ph" + + +class QuantitativeBiology(Enum): + Biomolecules = "q-bio.BM" + CellBehavior = "q-bio.CB" + Genomics = "q-bio.GN" + MolecularNetworks = "q-bio.MN" + NeuronsandCognition = "q-bio.NC" + OtherQuantitativeBiology = "q-bio.OT" + PopulationsandEvolution = "q-bio.PE" + QuantitativeMethods = "q-bio.QM" + SubcellularProcesses = "q-bio.SC" + TissuesandOrgans = "q-bio.TO" + + +class QuantitativeFinance(Enum): + ComputationalFinance = "q-fin.CP" + Economics = "q-fin.EC" + GeneralFinance = "q-fin.GN" + MathematicalFinance = "q-fin.MF" + PortfolioManagement = "q-fin.PM" + PricingofSecurities = "q-fin.PR" + RiskManagement = "q-fin.RM" + StatisticalFinance = "q-fin.ST" + TradingandMarketMicrostructure = "q-fin.TR" + + +class Statistics(Enum): + Applications = "stat.AP" + Computation = "stat.CO" + Methodology = "stat.ME" + MachineLearning = "stat.ML" + OtherStatistics = "stat.OT" + StatisticsTheory = "stat.TH" diff --git a/arxiv/query.py b/arxiv/query.py new file mode 100644 index 0000000..3fa410c --- /dev/null +++ b/arxiv/query.py @@ -0,0 +1,52 @@ +from enum import Enum + + +class Query(object): + _query_string: str + + # TODO: need helper to build query_string with a key/val pair, e.g. cat:ABC + def __init__(self, query_string: str = ""): + self._query_string = query_string + + # FIXME: check if value is a Category? + def attribute(attribute: "Attribute", value: str) -> "Query": + return Query('{}:"{}"'.format(attribute.value, value)) + + def __compose(self, other: "Query", operator: "Query.Operator"): + return Query("({}) {} ({})".format( + self._query_string, + operator.value, + other._query_string, + )) + + def AND(self, other: "Query"): + return self.__compose(other, Query.Operator.And) + + def OR(self, other: "Query"): + return self.__compose(other, Query.Operator.Or) + + def ANDNOT(self, other: "Query"): + return self.__compose(other, Query.Operator.AndNot) + + class Operator(Enum): + And = "AND" + Or = "OR" + AndNot = "ANDNOT" + + def to_string(self): + return self._query_string + + +class Attribute(Enum): + """ + See https://arxiv.org/help/api/user-manual#query_details. + """ + Title = "ti" + Author = "au" + Abstract = "abs" + Comment = "co" + JournalReference = "jr" + Category = "cat" + ReportNumber = "rn" + ID = "id" # NOTE: prefer id_list when possible. + All = "all" diff --git a/docs/arxiv.html b/docs/arxiv.html new file mode 100644 index 0000000..6ec6bbf --- /dev/null +++ b/docs/arxiv.html @@ -0,0 +1,461 @@ + + + + + + + arxiv API documentation + + + + + + + + +
+
+

+arxiv

+ +

arxiv.py Python 3.6 PyPI GitHub Workflow Status (branch)

+ +

Python wrapper for the arXiv API.

+ + + + + +

About arXiv

+ +

arXiv is a project by the Cornell University Library that provides open access to 1,000,000+ articles in Physics, Mathematics, Computer Science, Quantitative Biology, Quantitative Finance, and Statistics.

+ +

Usage

+ +

Installation

+ +
$ pip install arxiv
+
+ +

In your Python script, include the line

+ +
import arxiv
+
+ + + +

A Search specifies a search of arXiv's database.

+ +
arxiv.Search(
+  query: str = "",
+  id_list: List[str] = [],
+  max_results: float = float('inf'),
+  sort_by: SortCriterion = SortCriterion.Relevanvce,
+  sort_order: SortOrder = SortOrder.Descending
+)
+
+ +
    +
  • query: an arXiv query string. Advanced query formats are documented in the arXiv API User Manual.
  • +
  • id_list: list of arXiv record IDs (typically of the format "0710.5765v1"). See the arXiv API User's Manual for documentation of the interaction between query and id_list.
  • +
  • max_results: The maximum number of results to be returned in an execution of this search. To fetch every result available, set max_results=float('inf') (default); to fetch up to 10 results, set max_results=10. The API's limit is 300,000 results.
  • +
  • sort_by: The sort criterion for results: relevance, lastUpdatedDate, or submittedDate.
  • +
  • sort_order: The sort order for results: 'descending' or 'ascending'.
  • +
+ +

To fetch arXiv records matching a Search, use search.results() or (Client).results(search) to get a generator yielding Results.

+ +

Example: fetching results

+ +

Print the titles fo the 10 most recent articles related to the keyword "quantum:"

+ +
import arxiv
+
+search = arxiv.Search(
+  query = "quantum",
+  max_results = 10,
+  sort_by = arxiv.SortCriterion.SubmittedDate
+)
+
+for result in search.results():
+  print(result.title)
+
+ +

Fetch and print the title of the paper with ID "1605.08386v1:"

+ +
import arxiv
+
+search = arxiv.Search(id_list=["1605.08386v1"])
+paper = next(search.results())
+print(paper.title)
+
+ +

Result

+ + + +

The Result objects yielded by (Search).results() include metadata about each paper and some helper functions for downloading their content.

+ +

The meaning of the underlying raw data is documented in the arXiv API User Manual: Details of Atom Results Returned.

+ +
    +
  • result.entry_id: A url http://arxiv.org/abs/{id}.
  • +
  • result.updated: When the result was last updated.
  • +
  • result.published: When the result was originally published.
  • +
  • result.title: The title of the result.
  • +
  • result.authors: The result's authors, as arxiv.Authors.
  • +
  • result.summary: The result abstract.
  • +
  • result.comment: The authors' comment if present.
  • +
  • result.journal_ref: A journal reference if present.
  • +
  • result.doi: A URL for the resolved DOI to an external resource if present.
  • +
  • result.primary_category: The result's primary arXiv category. See arXiv: Category Taxonomy.
  • +
  • result.categories: All of the result's categories. See arXiv: Category Taxonomy.
  • +
  • result.links: Up to three URLs associated with this result, as arxiv.Links.
  • +
  • result.pdf_url: A URL for the result's PDF if present. Note: this URL also appears among result.links.
  • +
+ +

They also expose helper methods for downloading papers: (Result).download_pdf() and (Result).download_source().

+ +

Example: downloading papers

+ +

To download a PDF of the paper with ID "1605.08386v1," run a Search and then use (Result).download_pdf():

+ +
import arxiv
+
+paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
+# Download the PDF to the PWD with a default filename.
+paper.download_pdf()
+# Download the PDF to the PWD with a custom filename.
+paper.download_pdf(filename="downloaded-paper.pdf")
+# Download the PDF to a specified directory with a custom filename.
+paper.download_pdf(dirpath="./mydir", filename="downloaded-paper.pdf")
+
+ +

The same interface is available for downloading .tar.gz files of the paper source:

+ +
import arxiv
+
+paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
+# Download the archive to the PWD with a default filename.
+paper.download_source()
+# Download the archive to the PWD with a custom filename.
+paper.download_source(filename="downloaded-paper.tar.gz")
+# Download the archive to a specified directory with a custom filename.
+paper.download_source(dirpath="./mydir", filename="downloaded-paper.tar.gz")
+
+ +

Client

+ +

A Client specifies a strategy for fetching results from arXiv's API; it obscures pagination and retry logic.

+ +

For most use cases the default client should suffice. You can construct it explicitly with arxiv.Client(), or use it via the (Search).results() method.

+ +
arxiv.Client(
+  page_size: int = 100,
+  delay_seconds: int = 3,
+  num_retries: int = 3
+)
+
+ +
    +
  • page_size: the number of papers to fetch from arXiv per page of results. Smaller pages can be retrieved faster, but may require more round-trips. The API's limit is 2000 results.
  • +
  • delay_seconds: the number of seconds to wait between requests for pages. arXiv's Terms of Use ask that you "make no more than one request every three seconds."
  • +
  • num_retries: The number of times the client will retry a request that fails, either with a non-200 HTTP status code or with an unexpected number of results given the search parameters.
  • +
+ +

Example: fetching results with a custom client

+ +

(Search).results() uses the default client settings. If you want to use a client you've defined instead of the defaults, use (Client).results(...):

+ +
import arxiv
+
+big_slow_client = arxiv.Client(
+  page_size = 1000,
+  delay_seconds = 10,
+  num_retries = 5
+)
+
+# Prints 1000 titles before needing to make another request.
+for result in big_slow_client.results(arxiv.Search(query="quantum")):
+  print(result.title)
+
+ +

Example: logging

+ +

To inspect this package's network behavior and API logic, configure an INFO-level logger.

+ +
>>> import logging, arxiv
+>>> logging.basicConfig(level=logging.INFO)
+>>> paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
+INFO:arxiv.arxiv:Requesting 100 results at offset 0
+INFO:arxiv.arxiv:Requesting page of results
+INFO:arxiv.arxiv:Got first page; 1 of inf results available
+
+
+ +
+ View Source +
""".. include:: ../README.md"""
+# flake8: noqa
+from .arxiv import *
+
+ +
+ +
+
+ + + + \ No newline at end of file diff --git a/docs/arxiv/api.html b/docs/arxiv/api.html new file mode 100644 index 0000000..6fe34b0 --- /dev/null +++ b/docs/arxiv/api.html @@ -0,0 +1,3509 @@ + + + + + + + arxiv.api API documentation + + + + + + + + +
+
+

+arxiv.api

+ + +
+ View Source +
import logging
+import time
+import feedparser
+import re
+import os
+import warnings
+
+from urllib.parse import urlencode
+from urllib.request import urlretrieve
+from datetime import datetime, timedelta, timezone
+from calendar import timegm
+
+from enum import Enum
+from typing import Dict, Generator, List
+
+logger = logging.getLogger(__name__)
+
+_DEFAULT_TIME = datetime.min
+
+
+class Result(object):
+    """
+    An entry in an arXiv query results feed.
+
+    See [the arXiv API User's Manual: Details of Atom Results
+    Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned).
+    """
+
+    entry_id: str
+    """A url of the form `http://arxiv.org/abs/{id}`."""
+    updated: time.struct_time
+    """When the result was last updated."""
+    published: time.struct_time
+    """When the result was originally published."""
+    title: str
+    """The title of the result."""
+    authors: list
+    """The result's authors."""
+    summary: str
+    """The result abstrace."""
+    comment: str
+    """The authors' comment if present."""
+    journal_ref: str
+    """A journal reference if present."""
+    doi: str
+    """A URL for the resolved DOI to an external resource if present."""
+    primary_category: str
+    """
+    The result's primary arXiv category. See [arXiv: Category
+    Taxonomy](https://arxiv.org/category_taxonomy).
+    """
+    categories: List[str]
+    """
+    All of the result's categories. See [arXiv: Category
+    Taxonomy](https://arxiv.org/category_taxonomy).
+    """
+    links: list
+    """Up to three URLs associated with this result."""
+    pdf_url: str
+    """The URL of a PDF version of this result if present among links."""
+    _raw: feedparser.FeedParserDict
+    """
+    The raw feedparser result object if this Result was constructed with
+    Result._from_feed_entry.
+    """
+
+    def __init__(
+        self,
+        entry_id: str,
+        updated: datetime = _DEFAULT_TIME,
+        published: datetime = _DEFAULT_TIME,
+        title: str = "",
+        authors: List['Result.Author'] = [],
+        summary: str = "",
+        comment: str = "",
+        journal_ref: str = "",
+        doi: str = "",
+        primary_category: str = "",
+        categories: List[str] = [],
+        links: List['Result.Link'] = [],
+        _raw: feedparser.FeedParserDict = None,
+    ):
+        """
+        Constructs an arXiv search result item.
+
+        In most cases, prefer using `Result._from_feed_entry` to parsing and
+        constructing `Result`s yourself.
+        """
+        self.entry_id = entry_id
+        self.updated = updated
+        self.published = published
+        self.title = title
+        self.authors = authors
+        self.summary = summary
+        self.comment = comment
+        self.journal_ref = journal_ref
+        self.doi = doi
+        self.primary_category = primary_category
+        self.categories = categories
+        self.links = links
+        # Calculated members
+        self.pdf_url = Result._get_pdf_url(links)
+        # Debugging
+        self._raw = _raw
+
+    def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result':
+        """
+        Converts a feedparser entry for an arXiv search result feed into a
+        Result object.
+        """
+        if not hasattr(entry, "id"):
+            raise Result.MissingFieldError("id")
+        # Title attribute may be absent for certain titles. Defaulting to "0" as
+        # it's the only title observed to cause this bug.
+        # https://github.com/lukasschwab/arxiv.py/issues/71
+        # title = entry.title if hasattr(entry, "title") else "0"
+        title = "0"
+        if hasattr(entry, "title"):
+            title = entry.title
+        else:
+            logger.warning(
+                "Result %s is missing title attribute; defaulting to '0'",
+                entry.id
+            )
+        return Result(
+            entry_id=entry.id,
+            updated=Result._to_datetime(entry.updated_parsed),
+            published=Result._to_datetime(entry.published_parsed),
+            title=re.sub(r'\s+', ' ', title),
+            authors=[Result.Author._from_feed_author(a) for a in entry.authors],
+            summary=entry.summary,
+            comment=entry.get('arxiv_comment'),
+            journal_ref=entry.get('arxiv_journal_ref'),
+            doi=entry.get('arxiv_doi'),
+            primary_category=entry.arxiv_primary_category.get('term'),
+            categories=[tag.get('term') for tag in entry.tags],
+            links=[Result.Link._from_feed_link(link) for link in entry.links],
+            _raw=entry
+        )
+
+    def __str__(self) -> str:
+        return self.entry_id
+
+    def __repr__(self) -> str:
+        return (
+            '{}(entry_id={}, updated={}, published={}, title={}, authors={}, '
+            'summary={}, comment={}, journal_ref={}, doi={}, '
+            'primary_category={}, categories={}, links={})'
+        ).format(
+            _classname(self),
+            repr(self.entry_id),
+            repr(self.updated),
+            repr(self.published),
+            repr(self.title),
+            repr(self.authors),
+            repr(self.summary),
+            repr(self.comment),
+            repr(self.journal_ref),
+            repr(self.doi),
+            repr(self.primary_category),
+            repr(self.categories),
+            repr(self.links)
+        )
+
+    def __eq__(self, other) -> bool:
+        if isinstance(other, Result):
+            return self.entry_id == other.entry_id
+        return False
+
+    def get_short_id(self) -> str:
+        """
+        Returns the short ID for this result.
+
+        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
+        `result.get_short_id()` returns `2107.05580v1`.
+
+        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
+        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
+        2007 arXiv identifier format).
+
+        For an explanation of the difference between arXiv's legacy and current
+        identifiers, see [Understanding the arXiv
+        identifier](https://arxiv.org/help/arxiv_identifier).
+        """
+        return self.entry_id.split('arxiv.org/abs/')[-1]
+
+    def _get_default_filename(self, extension: str = "pdf") -> str:
+        """
+        A default `to_filename` function for the extension given.
+        """
+        nonempty_title = self.title if self.title else "UNTITLED"
+        # Remove disallowed characters.
+        clean_title = '_'.join(re.findall(r'\w+', nonempty_title))
+        return "{}.{}.{}".format(self.get_short_id(), clean_title, extension)
+
+    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the PDF for this result to the specified directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename()
+        path = os.path.join(dirpath, filename)
+        written_path, _ = urlretrieve(self.pdf_url, path)
+        return written_path
+
+    def download_source(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the source tarfile for this result to the specified
+        directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename('tar.gz')
+        path = os.path.join(dirpath, filename)
+        # Bodge: construct the source URL from the PDF URL.
+        source_url = self.pdf_url.replace('/pdf/', '/src/')
+        written_path, _ = urlretrieve(source_url, path)
+        return written_path
+
+    def _get_pdf_url(links: list) -> str:
+        """
+        Finds the PDF link among a result's links and returns its URL.
+
+        Should only be called once for a given `Result`, in its constructor.
+        After construction, the URL should be available in `Result.pdf_url`.
+        """
+        pdf_urls = [link.href for link in links if link.title == 'pdf']
+        if len(pdf_urls) == 0:
+            return None
+        elif len(pdf_urls) > 1:
+            logger.warning(
+                "Result has multiple PDF links; using %s",
+                pdf_urls[0]
+            )
+        return pdf_urls[0]
+
+    def _to_datetime(ts: time.struct_time) -> datetime:
+        """
+        Converts a UTC time.struct_time into a time-zone-aware datetime.
+
+        This will be replaced with feedparser functionality [when it becomes
+        available](https://github.com/kurtmckee/feedparser/issues/212).
+        """
+        return datetime.fromtimestamp(timegm(ts), tz=timezone.utc)
+
+    class Author(object):
+        """
+        A light inner class for representing a result's authors.
+        """
+
+        name: str
+        """The author's name."""
+
+        def __init__(self, name: str):
+            """
+            Constructs an `Author` with the specified name.
+
+            In most cases, prefer using `Author._from_feed_author` to parsing
+            and constructing `Author`s yourself.
+            """
+            self.name = name
+
+        def _from_feed_author(
+            feed_author: feedparser.FeedParserDict
+        ) -> 'Result.Author':
+            """
+            Constructs an `Author` with the name specified in an author object
+            from a feed entry.
+
+            See usage in `Result._from_feed_entry`.
+            """
+            return Result.Author(feed_author.name)
+
+        def __str__(self) -> str:
+            return self.name
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(_classname(self), repr(self.name))
+
+        def __eq__(self, other) -> bool:
+            if isinstance(other, Result.Author):
+                return self.name == other.name
+            return False
+
+    class Link(object):
+        """
+        A light inner class for representing a result's links.
+        """
+
+        href: str
+        """The link's `href` attribute."""
+        title: str
+        """The link's title."""
+        rel: str
+        """The link's relationship to the `Result`."""
+        content_type: str
+        """The link's HTTP content type."""
+
+        def __init__(
+            self,
+            href: str,
+            title: str = None,
+            rel: str = None,
+            content_type: str = None
+        ):
+            """
+            Constructs a `Link` with the specified link metadata.
+
+            In most cases, prefer using `Link._from_feed_link` to parsing and
+            constructing `Link`s yourself.
+            """
+            self.href = href
+            self.title = title
+            self.rel = rel
+            self.content_type = content_type
+
+        def _from_feed_link(
+            feed_link: feedparser.FeedParserDict
+        ) -> 'Result.Link':
+            """
+            Constructs a `Link` with link metadata specified in a link object
+            from a feed entry.
+
+            See usage in `Result._from_feed_entry`.
+            """
+            return Result.Link(
+                href=feed_link.href,
+                title=feed_link.get('title'),
+                rel=feed_link.get('rel'),
+                content_type=feed_link.get('content_type')
+            )
+
+        def __str__(self) -> str:
+            return self.href
+
+        def __repr__(self) -> str:
+            return '{}({}, title={}, rel={}, content_type={})'.format(
+                _classname(self),
+                repr(self.href),
+                repr(self.title),
+                repr(self.rel),
+                repr(self.content_type)
+            )
+
+        def __eq__(self, other) -> bool:
+            if isinstance(other, Result.Link):
+                return self.href == other.href
+            return False
+
+    class MissingFieldError(Exception):
+        """
+        An error indicating an entry is unparseable because it lacks required
+        fields.
+        """
+
+        missing_field: str
+        """The required field missing from the would-be entry."""
+        message: str
+        """Message describing what caused this error."""
+
+        def __init__(self, missing_field):
+            self.missing_field = missing_field
+            self.message = "Entry from arXiv missing required info"
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(
+                _classname(self),
+                repr(self.missing_field)
+            )
+
+
+class SortCriterion(Enum):
+    """
+    A SortCriterion identifies a property by which search results can be
+    sorted.
+
+    See [the arXiv API User's Manual: sort order for return
+    results](https://arxiv.org/help/api/user-manual#sort).
+    """
+    Relevance = "relevance"
+    LastUpdatedDate = "lastUpdatedDate"
+    SubmittedDate = "submittedDate"
+
+
+class SortOrder(Enum):
+    """
+    A SortOrder indicates order in which search results are sorted according
+    to the specified arxiv.SortCriterion.
+
+    See [the arXiv API User's Manual: sort order for return
+    results](https://arxiv.org/help/api/user-manual#sort).
+    """
+    Ascending = "ascending"
+    Descending = "descending"
+
+
+class Search(object):
+    """
+    A specification for a search of arXiv's database.
+
+    To run a search, use `Search.run` to use a default client or `Client.run`
+    with a specific client.
+    """
+
+    query: str
+    """
+    A query string.
+
+    See [the arXiv API User's Manual: Details of Query
+    Construction](https://arxiv.org/help/api/user-manual#query_details).
+    """
+    id_list: list
+    """
+    A list of arXiv article IDs to which to limit the search.
+
+    See [the arXiv API User's
+    Manual](https://arxiv.org/help/api/user-manual#search_query_and_id_list)
+    for documentation of the interaction between `query` and `id_list`.
+    """
+    max_results: float
+    """
+    The maximum number of results to be returned in an execution of this
+    search.
+
+    To fetch every result available, set `max_results=float('inf')`.
+    """
+    sort_by: SortCriterion
+    """The sort criterion for results."""
+    sort_order: SortOrder
+    """The sort order for results."""
+
+    def __init__(
+        self,
+        query: str = "",
+        id_list: List[str] = [],
+        max_results: float = float('inf'),
+        sort_by: SortCriterion = SortCriterion.Relevance,
+        sort_order: SortOrder = SortOrder.Descending
+    ):
+        """
+        Constructs an arXiv API search with the specified criteria.
+        """
+        self.query = query
+        self.id_list = id_list
+        self.max_results = max_results
+        self.sort_by = sort_by
+        self.sort_order = sort_order
+
+    def __str__(self) -> str:
+        # TODO: develop a more informative string representation.
+        return repr(self)
+
+    def __repr__(self) -> str:
+        return (
+            '{}(query={}, id_list={}, max_results={}, sort_by={}, '
+            'sort_order={})'
+        ).format(
+            _classname(self),
+            repr(self.query),
+            repr(self.id_list),
+            repr(self.max_results),
+            repr(self.sort_by),
+            repr(self.sort_order)
+        )
+
+    def _url_args(self) -> Dict[str, str]:
+        """
+        Returns a dict of search parameters that should be included in an API
+        request for this search.
+        """
+        return {
+            "search_query": self.query,
+            "id_list": ','.join(self.id_list),
+            "sortBy": self.sort_by.value,
+            "sortOrder": self.sort_order.value
+        }
+
+    def get(self) -> Generator[Result, None, None]:
+        """
+        **Deprecated** after 1.2.0; use `Search.results`.
+        """
+        warnings.warn(
+            "The 'get' method is deprecated, use 'results' instead",
+            DeprecationWarning,
+            stacklevel=2
+        )
+        return self.results()
+
+    def results(self) -> Generator[Result, None, None]:
+        """
+        Executes the specified search using a default arXiv API client.
+
+        For info on default behavior, see `Client.__init__` and `Client.results`.
+        """
+        return Client().results(self)
+
+
+class Client(object):
+    """
+    Specifies a strategy for fetching results from arXiv's API.
+
+    This class obscures pagination and retry logic, and exposes
+    `Client.results`.
+    """
+
+    query_url_format = 'http://export.arxiv.org/api/query?{}'
+    """The arXiv query API endpoint format."""
+    page_size: int
+    """Maximum number of results fetched in a single API request."""
+    delay_seconds: int
+    """Number of seconds to wait between API requests."""
+    num_retries: int
+    """Number of times to retry a failing API request."""
+    _last_request_dt: datetime
+
+    def __init__(
+        self,
+        page_size: int = 100,
+        delay_seconds: int = 3,
+        num_retries: int = 3
+    ):
+        """
+        Constructs an arXiv API client with the specified options.
+
+        Note: the default parameters should provide a robust request strategy
+        for most use cases. Extreme page sizes, delays, or retries risk
+        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
+        brittle behavior, and inconsistent results.
+        """
+        self.page_size = page_size
+        self.delay_seconds = delay_seconds
+        self.num_retries = num_retries
+        self._last_request_dt = None
+
+    def __str__(self) -> str:
+        # TODO: develop a more informative string representation.
+        return repr(self)
+
+    def __repr__(self) -> str:
+        return '{}(page_size={}, delay_seconds={}, num_retries={})'.format(
+            _classname(self),
+            repr(self.page_size),
+            repr(self.delay_seconds),
+            repr(self.num_retries)
+        )
+
+    def get(self, search: Search) -> Generator[Result, None, None]:
+        """
+        **Deprecated** after 1.2.0; use `Client.results`.
+        """
+        warnings.warn(
+            "The 'get' method is deprecated, use 'results' instead",
+            DeprecationWarning,
+            stacklevel=2
+        )
+        return self.results(search)
+
+    def results(self, search: Search) -> Generator[Result, None, None]:
+        """
+        Uses this client configuration to fetch one page of the search results
+        at a time, yielding the parsed `Result`s, until `max_results` results
+        have been yielded or there are no more search results.
+
+        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
+
+        For more on using generators, see
+        [Generators](https://wiki.python.org/moin/Generators).
+        """
+        offset = 0
+        # total_results may be reduced according to the feed's
+        # opensearch:totalResults value.
+        total_results = search.max_results
+        first_page = True
+        while offset < total_results:
+            page_size = min(self.page_size, search.max_results - offset)
+            logger.info("Requesting {} results at offset {}".format(
+                page_size,
+                offset,
+            ))
+            page_url = self._format_url(search, offset, page_size)
+            feed = self._parse_feed(page_url, first_page)
+            if first_page:
+                # NOTE: this is an ugly fix for a known bug. The totalresults
+                # value is set to 1 for results with zero entries. If that API
+                # bug is fixed, we can remove this conditional and always set
+                # `total_results = min(...)`.
+                if len(feed.entries) == 0:
+                    logger.info("Got empty results; stopping generation")
+                    total_results = 0
+                else:
+                    total_results = min(
+                        total_results,
+                        int(feed.feed.opensearch_totalresults)
+                    )
+                    logger.info("Got first page; {} of {} results available".format(
+                        total_results,
+                        search.max_results
+                    ))
+                # Subsequent pages are not the first page.
+                first_page = False
+            # Update offset for next request: account for received results.
+            offset += len(feed.entries)
+            # Yield query results until page is exhausted.
+            for entry in feed.entries:
+                try:
+                    yield Result._from_feed_entry(entry)
+                except Result.MissingFieldError:
+                    logger.warning("Skipping partial result")
+                    continue
+
+    def _format_url(self, search: Search, start: int, page_size: int) -> str:
+        """
+        Construct a request API for search that returns up to `page_size`
+        results starting with the result at index `start`.
+        """
+        url_args = search._url_args()
+        url_args.update({
+            "start": start,
+            "max_results": page_size,
+        })
+        return self.query_url_format.format(urlencode(url_args))
+
+    def _parse_feed(
+        self,
+        url: str,
+        first_page: bool = True
+    ) -> feedparser.FeedParserDict:
+        """
+        Fetches the specified URL and parses it with feedparser.
+
+        If a request fails or is unexpectedly empty, retries the request up to
+        `self.num_retries` times.
+        """
+        # Invoke the recursive helper with initial available retries.
+        return self.__try_parse_feed(
+            url,
+            first_page=first_page,
+            retries_left=self.num_retries
+        )
+
+    def __try_parse_feed(
+        self,
+        url: str,
+        first_page: bool,
+        retries_left: int,
+        last_err: Exception = None,
+    ) -> feedparser.FeedParserDict:
+        """
+        Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that
+        number of seconds has not passed since `_parse_feed` was last called,
+        sleeps until delay_seconds seconds have passed.
+        """
+        retry = self.num_retries - retries_left
+        # If this call would violate the rate limit, sleep until it doesn't.
+        if self._last_request_dt is not None:
+            required = timedelta(seconds=self.delay_seconds)
+            since_last_request = datetime.now() - self._last_request_dt
+            if since_last_request < required:
+                to_sleep = (required - since_last_request).total_seconds()
+                logger.info("Sleeping for %f seconds", to_sleep)
+                time.sleep(to_sleep)
+        logger.info("Requesting page of results", extra={
+            'url': url,
+            'first_page': first_page,
+            'retry': retry,
+            'last_err': last_err.message if last_err is not None else None,
+        })
+        feed = feedparser.parse(url)
+        self._last_request_dt = datetime.now()
+        err = None
+        if feed.status != 200:
+            err = HTTPError(url, retry, feed)
+        elif len(feed.entries) == 0 and not first_page:
+            err = UnexpectedEmptyPageError(url, retry)
+        if err is not None:
+            if retries_left > 0:
+                return self.__try_parse_feed(
+                    url,
+                    first_page=first_page,
+                    retries_left=retries_left-1,
+                    last_err=err,
+                )
+            # Feed was never returned in self.num_retries tries. Raise the last
+            # exception encountered.
+            raise err
+        return feed
+
+
+class ArxivError(Exception):
+    """This package's base Exception class."""
+
+    url: str
+    """The feed URL that could not be fetched."""
+    retry: int
+    """
+    The request try number which encountered this error; 0 for the initial try,
+    1 for the first retry, and so on.
+    """
+    message: str
+    """Message describing what caused this error."""
+
+    def __init__(self, url: str, retry: int, message: str):
+        """
+        Constructs an `ArxivError` encountered while fetching the specified URL.
+        """
+        self.url = url
+        self.retry = retry
+        self.message = message
+        super().__init__(self.message)
+
+    def __str__(self) -> str:
+        return '{} ({})'.format(self.message, self.url)
+
+
+class UnexpectedEmptyPageError(ArxivError):
+    """
+    An error raised when a page of results that should be non-empty is empty.
+
+    This should never happen in theory, but happens sporadically due to
+    brittleness in the underlying arXiv API; usually resolved by retries.
+
+    See `Client.results` for usage.
+    """
+    def __init__(self, url: str, retry: int):
+        """
+        Constructs an `UnexpectedEmptyPageError` encountered for the specified
+        API URL after `retry` tries.
+        """
+        self.url = url
+        super().__init__(url, retry, "Page of results was unexpectedly empty")
+
+    def __repr__(self) -> str:
+        return '{}({}, {})'.format(
+            _classname(self),
+            repr(self.url),
+            repr(self.retry)
+        )
+
+
+class HTTPError(ArxivError):
+    """
+    A non-200 status encountered while fetching a page of results.
+
+    See `Client.results` for usage.
+    """
+
+    status: int
+    """The HTTP status reported by feedparser."""
+    entry: feedparser.FeedParserDict
+    """The feed entry describing the error, if present."""
+
+    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
+        """
+        Constructs an `HTTPError` for the specified status code, encountered for
+        the specified API URL after `retry` tries.
+        """
+        self.url = url
+        self.status = feed.status
+        # If the feed is valid and includes a single entry, trust it's an
+        # explanation.
+        if not feed.bozo and len(feed.entries) == 1:
+            self.entry = feed.entries[0]
+        else:
+            self.entry = None
+        super().__init__(
+            url,
+            retry,
+            "Page request resulted in HTTP {}: {}".format(
+                self.status,
+                self.entry.summary if self.entry else None,
+            ),
+        )
+
+    def __repr__(self) -> str:
+        return '{}({}, {}, {})'.format(
+            _classname(self),
+            repr(self.url),
+            repr(self.retry),
+            repr(self.status)
+        )
+
+
+def _classname(o):
+    """A helper function for use in __repr__ methods: arxiv.Result.Link."""
+    return 'arxiv.{}'.format(o.__class__.__qualname__)
+
+ +
+ +
+
+
+ #   + + + class + Result: +
+ +
+ View Source +
class Result(object):
+    """
+    An entry in an arXiv query results feed.
+
+    See [the arXiv API User's Manual: Details of Atom Results
+    Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned).
+    """
+
+    entry_id: str
+    """A url of the form `http://arxiv.org/abs/{id}`."""
+    updated: time.struct_time
+    """When the result was last updated."""
+    published: time.struct_time
+    """When the result was originally published."""
+    title: str
+    """The title of the result."""
+    authors: list
+    """The result's authors."""
+    summary: str
+    """The result abstrace."""
+    comment: str
+    """The authors' comment if present."""
+    journal_ref: str
+    """A journal reference if present."""
+    doi: str
+    """A URL for the resolved DOI to an external resource if present."""
+    primary_category: str
+    """
+    The result's primary arXiv category. See [arXiv: Category
+    Taxonomy](https://arxiv.org/category_taxonomy).
+    """
+    categories: List[str]
+    """
+    All of the result's categories. See [arXiv: Category
+    Taxonomy](https://arxiv.org/category_taxonomy).
+    """
+    links: list
+    """Up to three URLs associated with this result."""
+    pdf_url: str
+    """The URL of a PDF version of this result if present among links."""
+    _raw: feedparser.FeedParserDict
+    """
+    The raw feedparser result object if this Result was constructed with
+    Result._from_feed_entry.
+    """
+
+    def __init__(
+        self,
+        entry_id: str,
+        updated: datetime = _DEFAULT_TIME,
+        published: datetime = _DEFAULT_TIME,
+        title: str = "",
+        authors: List['Result.Author'] = [],
+        summary: str = "",
+        comment: str = "",
+        journal_ref: str = "",
+        doi: str = "",
+        primary_category: str = "",
+        categories: List[str] = [],
+        links: List['Result.Link'] = [],
+        _raw: feedparser.FeedParserDict = None,
+    ):
+        """
+        Constructs an arXiv search result item.
+
+        In most cases, prefer using `Result._from_feed_entry` to parsing and
+        constructing `Result`s yourself.
+        """
+        self.entry_id = entry_id
+        self.updated = updated
+        self.published = published
+        self.title = title
+        self.authors = authors
+        self.summary = summary
+        self.comment = comment
+        self.journal_ref = journal_ref
+        self.doi = doi
+        self.primary_category = primary_category
+        self.categories = categories
+        self.links = links
+        # Calculated members
+        self.pdf_url = Result._get_pdf_url(links)
+        # Debugging
+        self._raw = _raw
+
+    def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result':
+        """
+        Converts a feedparser entry for an arXiv search result feed into a
+        Result object.
+        """
+        if not hasattr(entry, "id"):
+            raise Result.MissingFieldError("id")
+        # Title attribute may be absent for certain titles. Defaulting to "0" as
+        # it's the only title observed to cause this bug.
+        # https://github.com/lukasschwab/arxiv.py/issues/71
+        # title = entry.title if hasattr(entry, "title") else "0"
+        title = "0"
+        if hasattr(entry, "title"):
+            title = entry.title
+        else:
+            logger.warning(
+                "Result %s is missing title attribute; defaulting to '0'",
+                entry.id
+            )
+        return Result(
+            entry_id=entry.id,
+            updated=Result._to_datetime(entry.updated_parsed),
+            published=Result._to_datetime(entry.published_parsed),
+            title=re.sub(r'\s+', ' ', title),
+            authors=[Result.Author._from_feed_author(a) for a in entry.authors],
+            summary=entry.summary,
+            comment=entry.get('arxiv_comment'),
+            journal_ref=entry.get('arxiv_journal_ref'),
+            doi=entry.get('arxiv_doi'),
+            primary_category=entry.arxiv_primary_category.get('term'),
+            categories=[tag.get('term') for tag in entry.tags],
+            links=[Result.Link._from_feed_link(link) for link in entry.links],
+            _raw=entry
+        )
+
+    def __str__(self) -> str:
+        return self.entry_id
+
+    def __repr__(self) -> str:
+        return (
+            '{}(entry_id={}, updated={}, published={}, title={}, authors={}, '
+            'summary={}, comment={}, journal_ref={}, doi={}, '
+            'primary_category={}, categories={}, links={})'
+        ).format(
+            _classname(self),
+            repr(self.entry_id),
+            repr(self.updated),
+            repr(self.published),
+            repr(self.title),
+            repr(self.authors),
+            repr(self.summary),
+            repr(self.comment),
+            repr(self.journal_ref),
+            repr(self.doi),
+            repr(self.primary_category),
+            repr(self.categories),
+            repr(self.links)
+        )
+
+    def __eq__(self, other) -> bool:
+        if isinstance(other, Result):
+            return self.entry_id == other.entry_id
+        return False
+
+    def get_short_id(self) -> str:
+        """
+        Returns the short ID for this result.
+
+        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
+        `result.get_short_id()` returns `2107.05580v1`.
+
+        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
+        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
+        2007 arXiv identifier format).
+
+        For an explanation of the difference between arXiv's legacy and current
+        identifiers, see [Understanding the arXiv
+        identifier](https://arxiv.org/help/arxiv_identifier).
+        """
+        return self.entry_id.split('arxiv.org/abs/')[-1]
+
+    def _get_default_filename(self, extension: str = "pdf") -> str:
+        """
+        A default `to_filename` function for the extension given.
+        """
+        nonempty_title = self.title if self.title else "UNTITLED"
+        # Remove disallowed characters.
+        clean_title = '_'.join(re.findall(r'\w+', nonempty_title))
+        return "{}.{}.{}".format(self.get_short_id(), clean_title, extension)
+
+    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the PDF for this result to the specified directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename()
+        path = os.path.join(dirpath, filename)
+        written_path, _ = urlretrieve(self.pdf_url, path)
+        return written_path
+
+    def download_source(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the source tarfile for this result to the specified
+        directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename('tar.gz')
+        path = os.path.join(dirpath, filename)
+        # Bodge: construct the source URL from the PDF URL.
+        source_url = self.pdf_url.replace('/pdf/', '/src/')
+        written_path, _ = urlretrieve(source_url, path)
+        return written_path
+
+    def _get_pdf_url(links: list) -> str:
+        """
+        Finds the PDF link among a result's links and returns its URL.
+
+        Should only be called once for a given `Result`, in its constructor.
+        After construction, the URL should be available in `Result.pdf_url`.
+        """
+        pdf_urls = [link.href for link in links if link.title == 'pdf']
+        if len(pdf_urls) == 0:
+            return None
+        elif len(pdf_urls) > 1:
+            logger.warning(
+                "Result has multiple PDF links; using %s",
+                pdf_urls[0]
+            )
+        return pdf_urls[0]
+
+    def _to_datetime(ts: time.struct_time) -> datetime:
+        """
+        Converts a UTC time.struct_time into a time-zone-aware datetime.
+
+        This will be replaced with feedparser functionality [when it becomes
+        available](https://github.com/kurtmckee/feedparser/issues/212).
+        """
+        return datetime.fromtimestamp(timegm(ts), tz=timezone.utc)
+
+    class Author(object):
+        """
+        A light inner class for representing a result's authors.
+        """
+
+        name: str
+        """The author's name."""
+
+        def __init__(self, name: str):
+            """
+            Constructs an `Author` with the specified name.
+
+            In most cases, prefer using `Author._from_feed_author` to parsing
+            and constructing `Author`s yourself.
+            """
+            self.name = name
+
+        def _from_feed_author(
+            feed_author: feedparser.FeedParserDict
+        ) -> 'Result.Author':
+            """
+            Constructs an `Author` with the name specified in an author object
+            from a feed entry.
+
+            See usage in `Result._from_feed_entry`.
+            """
+            return Result.Author(feed_author.name)
+
+        def __str__(self) -> str:
+            return self.name
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(_classname(self), repr(self.name))
+
+        def __eq__(self, other) -> bool:
+            if isinstance(other, Result.Author):
+                return self.name == other.name
+            return False
+
+    class Link(object):
+        """
+        A light inner class for representing a result's links.
+        """
+
+        href: str
+        """The link's `href` attribute."""
+        title: str
+        """The link's title."""
+        rel: str
+        """The link's relationship to the `Result`."""
+        content_type: str
+        """The link's HTTP content type."""
+
+        def __init__(
+            self,
+            href: str,
+            title: str = None,
+            rel: str = None,
+            content_type: str = None
+        ):
+            """
+            Constructs a `Link` with the specified link metadata.
+
+            In most cases, prefer using `Link._from_feed_link` to parsing and
+            constructing `Link`s yourself.
+            """
+            self.href = href
+            self.title = title
+            self.rel = rel
+            self.content_type = content_type
+
+        def _from_feed_link(
+            feed_link: feedparser.FeedParserDict
+        ) -> 'Result.Link':
+            """
+            Constructs a `Link` with link metadata specified in a link object
+            from a feed entry.
+
+            See usage in `Result._from_feed_entry`.
+            """
+            return Result.Link(
+                href=feed_link.href,
+                title=feed_link.get('title'),
+                rel=feed_link.get('rel'),
+                content_type=feed_link.get('content_type')
+            )
+
+        def __str__(self) -> str:
+            return self.href
+
+        def __repr__(self) -> str:
+            return '{}({}, title={}, rel={}, content_type={})'.format(
+                _classname(self),
+                repr(self.href),
+                repr(self.title),
+                repr(self.rel),
+                repr(self.content_type)
+            )
+
+        def __eq__(self, other) -> bool:
+            if isinstance(other, Result.Link):
+                return self.href == other.href
+            return False
+
+    class MissingFieldError(Exception):
+        """
+        An error indicating an entry is unparseable because it lacks required
+        fields.
+        """
+
+        missing_field: str
+        """The required field missing from the would-be entry."""
+        message: str
+        """Message describing what caused this error."""
+
+        def __init__(self, missing_field):
+            self.missing_field = missing_field
+            self.message = "Entry from arXiv missing required info"
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(
+                _classname(self),
+                repr(self.missing_field)
+            )
+
+ +
+ +

An entry in an arXiv query results feed.

+ +

See the arXiv API User's Manual: Details of Atom Results +Returned.

+
+ + +
+
#   + + + Result( + entry_id: str, + updated: datetime.datetime = datetime.datetime(1, 1, 1, 0, 0), + published: datetime.datetime = datetime.datetime(1, 1, 1, 0, 0), + title: str = '', + authors: list[arxiv.api.Result.Author] = [], + summary: str = '', + comment: str = '', + journal_ref: str = '', + doi: str = '', + primary_category: str = '', + categories: List[str] = [], + links: list[arxiv.api.Result.Link] = [], + _raw: feedparser.util.FeedParserDict = None +) +
+ +
+ View Source +
    def __init__(
+        self,
+        entry_id: str,
+        updated: datetime = _DEFAULT_TIME,
+        published: datetime = _DEFAULT_TIME,
+        title: str = "",
+        authors: List['Result.Author'] = [],
+        summary: str = "",
+        comment: str = "",
+        journal_ref: str = "",
+        doi: str = "",
+        primary_category: str = "",
+        categories: List[str] = [],
+        links: List['Result.Link'] = [],
+        _raw: feedparser.FeedParserDict = None,
+    ):
+        """
+        Constructs an arXiv search result item.
+
+        In most cases, prefer using `Result._from_feed_entry` to parsing and
+        constructing `Result`s yourself.
+        """
+        self.entry_id = entry_id
+        self.updated = updated
+        self.published = published
+        self.title = title
+        self.authors = authors
+        self.summary = summary
+        self.comment = comment
+        self.journal_ref = journal_ref
+        self.doi = doi
+        self.primary_category = primary_category
+        self.categories = categories
+        self.links = links
+        # Calculated members
+        self.pdf_url = Result._get_pdf_url(links)
+        # Debugging
+        self._raw = _raw
+
+ +
+ +

Constructs an arXiv search result item.

+ +

In most cases, prefer using Result._from_feed_entry to parsing and +constructing Results yourself.

+
+ + +
+
+
#   + + entry_id: str +
+ +

A url of the form http://arxiv.org/abs/{id}.

+
+ + +
+
+
#   + + updated: time.struct_time +
+ +

When the result was last updated.

+
+ + +
+
+
#   + + published: time.struct_time +
+ +

When the result was originally published.

+
+ + +
+
+
#   + + title: str +
+ +

The title of the result.

+
+ + +
+
+
#   + + authors: list +
+ +

The result's authors.

+
+ + +
+
+
#   + + summary: str +
+ +

The result abstrace.

+
+ + +
+
+
#   + + comment: str +
+ +

The authors' comment if present.

+
+ + +
+
+
#   + + journal_ref: str +
+ +

A journal reference if present.

+
+ + +
+
+
#   + + doi: str +
+ +

A URL for the resolved DOI to an external resource if present.

+
+ + +
+
+
#   + + primary_category: str +
+ +

The result's primary arXiv category. See arXiv: Category +Taxonomy.

+
+ + +
+
+
#   + + categories: List[str] +
+ +

All of the result's categories. See arXiv: Category +Taxonomy.

+
+ + +
+ +
+
#   + + pdf_url: str +
+ +

The URL of a PDF version of this result if present among links.

+
+ + +
+
+
#   + + + def + get_short_id(self) -> str: +
+ +
+ View Source +
    def get_short_id(self) -> str:
+        """
+        Returns the short ID for this result.
+
+        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
+        `result.get_short_id()` returns `2107.05580v1`.
+
+        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
+        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
+        2007 arXiv identifier format).
+
+        For an explanation of the difference between arXiv's legacy and current
+        identifiers, see [Understanding the arXiv
+        identifier](https://arxiv.org/help/arxiv_identifier).
+        """
+        return self.entry_id.split('arxiv.org/abs/')[-1]
+
+ +
+ +

Returns the short ID for this result.

+ +
    +
  • If the result URL is "http://arxiv.org/abs/2107.05580v1", +result.get_short_id() returns 2107.05580v1.

  • +
  • If the result URL is "http://arxiv.org/abs/quant-ph/0201082v1", +result.get_short_id() returns "quant-ph/0201082v1" (the pre-March +2007 arXiv identifier format).

  • +
+ +

For an explanation of the difference between arXiv's legacy and current +identifiers, see Understanding the arXiv +identifier.

+
+ + +
+
+
#   + + + def + download_pdf(self, dirpath: str = './', filename: str = '') -> str: +
+ +
+ View Source +
    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the PDF for this result to the specified directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename()
+        path = os.path.join(dirpath, filename)
+        written_path, _ = urlretrieve(self.pdf_url, path)
+        return written_path
+
+ +
+ +

Downloads the PDF for this result to the specified directory.

+ +

The filename is generated by calling to_filename(self).

+
+ + +
+
+
#   + + + def + download_source(self, dirpath: str = './', filename: str = '') -> str: +
+ +
+ View Source +
    def download_source(self, dirpath: str = './', filename: str = '') -> str:
+        """
+        Downloads the source tarfile for this result to the specified
+        directory.
+
+        The filename is generated by calling `to_filename(self)`.
+        """
+        if not filename:
+            filename = self._get_default_filename('tar.gz')
+        path = os.path.join(dirpath, filename)
+        # Bodge: construct the source URL from the PDF URL.
+        source_url = self.pdf_url.replace('/pdf/', '/src/')
+        written_path, _ = urlretrieve(source_url, path)
+        return written_path
+
+ +
+ +

Downloads the source tarfile for this result to the specified +directory.

+ +

The filename is generated by calling to_filename(self).

+
+ + +
+
+
+
+ #   + + + class + Result.Author: +
+ +
+ View Source +
    class Author(object):
+        """
+        A light inner class for representing a result's authors.
+        """
+
+        name: str
+        """The author's name."""
+
+        def __init__(self, name: str):
+            """
+            Constructs an `Author` with the specified name.
+
+            In most cases, prefer using `Author._from_feed_author` to parsing
+            and constructing `Author`s yourself.
+            """
+            self.name = name
+
+        def _from_feed_author(
+            feed_author: feedparser.FeedParserDict
+        ) -> 'Result.Author':
+            """
+            Constructs an `Author` with the name specified in an author object
+            from a feed entry.
+
+            See usage in `Result._from_feed_entry`.
+            """
+            return Result.Author(feed_author.name)
+
+        def __str__(self) -> str:
+            return self.name
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(_classname(self), repr(self.name))
+
+        def __eq__(self, other) -> bool:
+            if isinstance(other, Result.Author):
+                return self.name == other.name
+            return False
+
+ +
+ +

A light inner class for representing a result's authors.

+
+ + +
+
#   + + + Result.Author(name: str) +
+ +
+ View Source +
        def __init__(self, name: str):
+            """
+            Constructs an `Author` with the specified name.
+
+            In most cases, prefer using `Author._from_feed_author` to parsing
+            and constructing `Author`s yourself.
+            """
+            self.name = name
+
+ +
+ +

Constructs an Author with the specified name.

+ +

In most cases, prefer using Author._from_feed_author to parsing +and constructing Authors yourself.

+
+ + +
+
+
#   + + name: str +
+ +

The author's name.

+
+ + +
+
+ +
+
+ #   + + + class + Result.MissingFieldError(builtins.Exception): +
+ +
+ View Source +
    class MissingFieldError(Exception):
+        """
+        An error indicating an entry is unparseable because it lacks required
+        fields.
+        """
+
+        missing_field: str
+        """The required field missing from the would-be entry."""
+        message: str
+        """Message describing what caused this error."""
+
+        def __init__(self, missing_field):
+            self.missing_field = missing_field
+            self.message = "Entry from arXiv missing required info"
+
+        def __repr__(self) -> str:
+            return '{}({})'.format(
+                _classname(self),
+                repr(self.missing_field)
+            )
+
+ +
+ +

An error indicating an entry is unparseable because it lacks required +fields.

+
+ + +
+
#   + + + Result.MissingFieldError(missing_field) +
+ +
+ View Source +
        def __init__(self, missing_field):
+            self.missing_field = missing_field
+            self.message = "Entry from arXiv missing required info"
+
+ +
+ + + +
+
+
#   + + missing_field: str +
+ +

The required field missing from the would-be entry.

+
+ + +
+
+
#   + + message: str +
+ +

Message describing what caused this error.

+
+ + +
+
+
Inherited Members
+
+
builtins.BaseException
+
with_traceback
+
args
+ +
+
+
+
+
+
+ #   + + + class + SortCriterion(enum.Enum): +
+ +
+ View Source +
class SortCriterion(Enum):
+    """
+    A SortCriterion identifies a property by which search results can be
+    sorted.
+
+    See [the arXiv API User's Manual: sort order for return
+    results](https://arxiv.org/help/api/user-manual#sort).
+    """
+    Relevance = "relevance"
+    LastUpdatedDate = "lastUpdatedDate"
+    SubmittedDate = "submittedDate"
+
+ +
+ +

A SortCriterion identifies a property by which search results can be +sorted.

+ +

See the arXiv API User's Manual: sort order for return +results.

+
+ + +
+
#   + + Relevance = <SortCriterion.Relevance: 'relevance'> +
+ + + +
+
+
#   + + LastUpdatedDate = <SortCriterion.LastUpdatedDate: 'lastUpdatedDate'> +
+ + + +
+
+
#   + + SubmittedDate = <SortCriterion.SubmittedDate: 'submittedDate'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + SortOrder(enum.Enum): +
+ +
+ View Source +
class SortOrder(Enum):
+    """
+    A SortOrder indicates order in which search results are sorted according
+    to the specified arxiv.SortCriterion.
+
+    See [the arXiv API User's Manual: sort order for return
+    results](https://arxiv.org/help/api/user-manual#sort).
+    """
+    Ascending = "ascending"
+    Descending = "descending"
+
+ +
+ +

A SortOrder indicates order in which search results are sorted according +to the specified arxiv.SortCriterion.

+ +

See the arXiv API User's Manual: sort order for return +results.

+
+ + +
+
#   + + Ascending = <SortOrder.Ascending: 'ascending'> +
+ + + +
+
+
#   + + Descending = <SortOrder.Descending: 'descending'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+ +
+
+ #   + + + class + Client: +
+ +
+ View Source +
class Client(object):
+    """
+    Specifies a strategy for fetching results from arXiv's API.
+
+    This class obscures pagination and retry logic, and exposes
+    `Client.results`.
+    """
+
+    query_url_format = 'http://export.arxiv.org/api/query?{}'
+    """The arXiv query API endpoint format."""
+    page_size: int
+    """Maximum number of results fetched in a single API request."""
+    delay_seconds: int
+    """Number of seconds to wait between API requests."""
+    num_retries: int
+    """Number of times to retry a failing API request."""
+    _last_request_dt: datetime
+
+    def __init__(
+        self,
+        page_size: int = 100,
+        delay_seconds: int = 3,
+        num_retries: int = 3
+    ):
+        """
+        Constructs an arXiv API client with the specified options.
+
+        Note: the default parameters should provide a robust request strategy
+        for most use cases. Extreme page sizes, delays, or retries risk
+        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
+        brittle behavior, and inconsistent results.
+        """
+        self.page_size = page_size
+        self.delay_seconds = delay_seconds
+        self.num_retries = num_retries
+        self._last_request_dt = None
+
+    def __str__(self) -> str:
+        # TODO: develop a more informative string representation.
+        return repr(self)
+
+    def __repr__(self) -> str:
+        return '{}(page_size={}, delay_seconds={}, num_retries={})'.format(
+            _classname(self),
+            repr(self.page_size),
+            repr(self.delay_seconds),
+            repr(self.num_retries)
+        )
+
+    def get(self, search: Search) -> Generator[Result, None, None]:
+        """
+        **Deprecated** after 1.2.0; use `Client.results`.
+        """
+        warnings.warn(
+            "The 'get' method is deprecated, use 'results' instead",
+            DeprecationWarning,
+            stacklevel=2
+        )
+        return self.results(search)
+
+    def results(self, search: Search) -> Generator[Result, None, None]:
+        """
+        Uses this client configuration to fetch one page of the search results
+        at a time, yielding the parsed `Result`s, until `max_results` results
+        have been yielded or there are no more search results.
+
+        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
+
+        For more on using generators, see
+        [Generators](https://wiki.python.org/moin/Generators).
+        """
+        offset = 0
+        # total_results may be reduced according to the feed's
+        # opensearch:totalResults value.
+        total_results = search.max_results
+        first_page = True
+        while offset < total_results:
+            page_size = min(self.page_size, search.max_results - offset)
+            logger.info("Requesting {} results at offset {}".format(
+                page_size,
+                offset,
+            ))
+            page_url = self._format_url(search, offset, page_size)
+            feed = self._parse_feed(page_url, first_page)
+            if first_page:
+                # NOTE: this is an ugly fix for a known bug. The totalresults
+                # value is set to 1 for results with zero entries. If that API
+                # bug is fixed, we can remove this conditional and always set
+                # `total_results = min(...)`.
+                if len(feed.entries) == 0:
+                    logger.info("Got empty results; stopping generation")
+                    total_results = 0
+                else:
+                    total_results = min(
+                        total_results,
+                        int(feed.feed.opensearch_totalresults)
+                    )
+                    logger.info("Got first page; {} of {} results available".format(
+                        total_results,
+                        search.max_results
+                    ))
+                # Subsequent pages are not the first page.
+                first_page = False
+            # Update offset for next request: account for received results.
+            offset += len(feed.entries)
+            # Yield query results until page is exhausted.
+            for entry in feed.entries:
+                try:
+                    yield Result._from_feed_entry(entry)
+                except Result.MissingFieldError:
+                    logger.warning("Skipping partial result")
+                    continue
+
+    def _format_url(self, search: Search, start: int, page_size: int) -> str:
+        """
+        Construct a request API for search that returns up to `page_size`
+        results starting with the result at index `start`.
+        """
+        url_args = search._url_args()
+        url_args.update({
+            "start": start,
+            "max_results": page_size,
+        })
+        return self.query_url_format.format(urlencode(url_args))
+
+    def _parse_feed(
+        self,
+        url: str,
+        first_page: bool = True
+    ) -> feedparser.FeedParserDict:
+        """
+        Fetches the specified URL and parses it with feedparser.
+
+        If a request fails or is unexpectedly empty, retries the request up to
+        `self.num_retries` times.
+        """
+        # Invoke the recursive helper with initial available retries.
+        return self.__try_parse_feed(
+            url,
+            first_page=first_page,
+            retries_left=self.num_retries
+        )
+
+    def __try_parse_feed(
+        self,
+        url: str,
+        first_page: bool,
+        retries_left: int,
+        last_err: Exception = None,
+    ) -> feedparser.FeedParserDict:
+        """
+        Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that
+        number of seconds has not passed since `_parse_feed` was last called,
+        sleeps until delay_seconds seconds have passed.
+        """
+        retry = self.num_retries - retries_left
+        # If this call would violate the rate limit, sleep until it doesn't.
+        if self._last_request_dt is not None:
+            required = timedelta(seconds=self.delay_seconds)
+            since_last_request = datetime.now() - self._last_request_dt
+            if since_last_request < required:
+                to_sleep = (required - since_last_request).total_seconds()
+                logger.info("Sleeping for %f seconds", to_sleep)
+                time.sleep(to_sleep)
+        logger.info("Requesting page of results", extra={
+            'url': url,
+            'first_page': first_page,
+            'retry': retry,
+            'last_err': last_err.message if last_err is not None else None,
+        })
+        feed = feedparser.parse(url)
+        self._last_request_dt = datetime.now()
+        err = None
+        if feed.status != 200:
+            err = HTTPError(url, retry, feed)
+        elif len(feed.entries) == 0 and not first_page:
+            err = UnexpectedEmptyPageError(url, retry)
+        if err is not None:
+            if retries_left > 0:
+                return self.__try_parse_feed(
+                    url,
+                    first_page=first_page,
+                    retries_left=retries_left-1,
+                    last_err=err,
+                )
+            # Feed was never returned in self.num_retries tries. Raise the last
+            # exception encountered.
+            raise err
+        return feed
+
+ +
+ +

Specifies a strategy for fetching results from arXiv's API.

+ +

This class obscures pagination and retry logic, and exposes +Client.results.

+
+ + +
+
#   + + + Client(page_size: int = 100, delay_seconds: int = 3, num_retries: int = 3) +
+ +
+ View Source +
    def __init__(
+        self,
+        page_size: int = 100,
+        delay_seconds: int = 3,
+        num_retries: int = 3
+    ):
+        """
+        Constructs an arXiv API client with the specified options.
+
+        Note: the default parameters should provide a robust request strategy
+        for most use cases. Extreme page sizes, delays, or retries risk
+        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
+        brittle behavior, and inconsistent results.
+        """
+        self.page_size = page_size
+        self.delay_seconds = delay_seconds
+        self.num_retries = num_retries
+        self._last_request_dt = None
+
+ +
+ +

Constructs an arXiv API client with the specified options.

+ +

Note: the default parameters should provide a robust request strategy +for most use cases. Extreme page sizes, delays, or retries risk +violating the arXiv API Terms of Use, +brittle behavior, and inconsistent results.

+
+ + +
+
+
#   + + query_url_format = 'http://export.arxiv.org/api/query?{}' +
+ +

The arXiv query API endpoint format.

+
+ + +
+
+
#   + + page_size: int +
+ +

Maximum number of results fetched in a single API request.

+
+ + +
+
+
#   + + delay_seconds: int +
+ +

Number of seconds to wait between API requests.

+
+ + +
+
+
#   + + num_retries: int +
+ +

Number of times to retry a failing API request.

+
+ + +
+
+
#   + + + def + get( + self, + search: arxiv.api.Search +) -> Generator[arxiv.api.Result, NoneType, NoneType]: +
+ +
+ View Source +
    def get(self, search: Search) -> Generator[Result, None, None]:
+        """
+        **Deprecated** after 1.2.0; use `Client.results`.
+        """
+        warnings.warn(
+            "The 'get' method is deprecated, use 'results' instead",
+            DeprecationWarning,
+            stacklevel=2
+        )
+        return self.results(search)
+
+ +
+ +

Deprecated after 1.2.0; use Client.results.

+
+ + +
+
+
#   + + + def + results( + self, + search: arxiv.api.Search +) -> Generator[arxiv.api.Result, NoneType, NoneType]: +
+ +
+ View Source +
    def results(self, search: Search) -> Generator[Result, None, None]:
+        """
+        Uses this client configuration to fetch one page of the search results
+        at a time, yielding the parsed `Result`s, until `max_results` results
+        have been yielded or there are no more search results.
+
+        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
+
+        For more on using generators, see
+        [Generators](https://wiki.python.org/moin/Generators).
+        """
+        offset = 0
+        # total_results may be reduced according to the feed's
+        # opensearch:totalResults value.
+        total_results = search.max_results
+        first_page = True
+        while offset < total_results:
+            page_size = min(self.page_size, search.max_results - offset)
+            logger.info("Requesting {} results at offset {}".format(
+                page_size,
+                offset,
+            ))
+            page_url = self._format_url(search, offset, page_size)
+            feed = self._parse_feed(page_url, first_page)
+            if first_page:
+                # NOTE: this is an ugly fix for a known bug. The totalresults
+                # value is set to 1 for results with zero entries. If that API
+                # bug is fixed, we can remove this conditional and always set
+                # `total_results = min(...)`.
+                if len(feed.entries) == 0:
+                    logger.info("Got empty results; stopping generation")
+                    total_results = 0
+                else:
+                    total_results = min(
+                        total_results,
+                        int(feed.feed.opensearch_totalresults)
+                    )
+                    logger.info("Got first page; {} of {} results available".format(
+                        total_results,
+                        search.max_results
+                    ))
+                # Subsequent pages are not the first page.
+                first_page = False
+            # Update offset for next request: account for received results.
+            offset += len(feed.entries)
+            # Yield query results until page is exhausted.
+            for entry in feed.entries:
+                try:
+                    yield Result._from_feed_entry(entry)
+                except Result.MissingFieldError:
+                    logger.warning("Skipping partial result")
+                    continue
+
+ +
+ +

Uses this client configuration to fetch one page of the search results +at a time, yielding the parsed Results, until max_results results +have been yielded or there are no more search results.

+ +

If all tries fail, raises an UnexpectedEmptyPageError or HTTPError.

+ +

For more on using generators, see +Generators.

+
+ + +
+
+
+
+ #   + + + class + ArxivError(builtins.Exception): +
+ +
+ View Source +
class ArxivError(Exception):
+    """This package's base Exception class."""
+
+    url: str
+    """The feed URL that could not be fetched."""
+    retry: int
+    """
+    The request try number which encountered this error; 0 for the initial try,
+    1 for the first retry, and so on.
+    """
+    message: str
+    """Message describing what caused this error."""
+
+    def __init__(self, url: str, retry: int, message: str):
+        """
+        Constructs an `ArxivError` encountered while fetching the specified URL.
+        """
+        self.url = url
+        self.retry = retry
+        self.message = message
+        super().__init__(self.message)
+
+    def __str__(self) -> str:
+        return '{} ({})'.format(self.message, self.url)
+
+ +
+ +

This package's base Exception class.

+
+ + +
+
#   + + + ArxivError(url: str, retry: int, message: str) +
+ +
+ View Source +
    def __init__(self, url: str, retry: int, message: str):
+        """
+        Constructs an `ArxivError` encountered while fetching the specified URL.
+        """
+        self.url = url
+        self.retry = retry
+        self.message = message
+        super().__init__(self.message)
+
+ +
+ +

Constructs an ArxivError encountered while fetching the specified URL.

+
+ + +
+
+
#   + + url: str +
+ +

The feed URL that could not be fetched.

+
+ + +
+
+
#   + + retry: int +
+ +

The request try number which encountered this error; 0 for the initial try, +1 for the first retry, and so on.

+
+ + +
+
+
#   + + message: str +
+ +

Message describing what caused this error.

+
+ + +
+
+
Inherited Members
+
+
builtins.BaseException
+
with_traceback
+
args
+ +
+
+
+
+
+
+ #   + + + class + UnexpectedEmptyPageError(ArxivError): +
+ +
+ View Source +
class UnexpectedEmptyPageError(ArxivError):
+    """
+    An error raised when a page of results that should be non-empty is empty.
+
+    This should never happen in theory, but happens sporadically due to
+    brittleness in the underlying arXiv API; usually resolved by retries.
+
+    See `Client.results` for usage.
+    """
+    def __init__(self, url: str, retry: int):
+        """
+        Constructs an `UnexpectedEmptyPageError` encountered for the specified
+        API URL after `retry` tries.
+        """
+        self.url = url
+        super().__init__(url, retry, "Page of results was unexpectedly empty")
+
+    def __repr__(self) -> str:
+        return '{}({}, {})'.format(
+            _classname(self),
+            repr(self.url),
+            repr(self.retry)
+        )
+
+ +
+ +

An error raised when a page of results that should be non-empty is empty.

+ +

This should never happen in theory, but happens sporadically due to +brittleness in the underlying arXiv API; usually resolved by retries.

+ +

See Client.results for usage.

+
+ + +
+
#   + + + UnexpectedEmptyPageError(url: str, retry: int) +
+ +
+ View Source +
    def __init__(self, url: str, retry: int):
+        """
+        Constructs an `UnexpectedEmptyPageError` encountered for the specified
+        API URL after `retry` tries.
+        """
+        self.url = url
+        super().__init__(url, retry, "Page of results was unexpectedly empty")
+
+ +
+ +

Constructs an UnexpectedEmptyPageError encountered for the specified +API URL after retry tries.

+
+ + +
+
+
Inherited Members
+
+
ArxivError
+
url
+
retry
+
message
+ +
+
builtins.BaseException
+
with_traceback
+
args
+ +
+
+
+
+
+
+ #   + + + class + HTTPError(ArxivError): +
+ +
+ View Source +
class HTTPError(ArxivError):
+    """
+    A non-200 status encountered while fetching a page of results.
+
+    See `Client.results` for usage.
+    """
+
+    status: int
+    """The HTTP status reported by feedparser."""
+    entry: feedparser.FeedParserDict
+    """The feed entry describing the error, if present."""
+
+    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
+        """
+        Constructs an `HTTPError` for the specified status code, encountered for
+        the specified API URL after `retry` tries.
+        """
+        self.url = url
+        self.status = feed.status
+        # If the feed is valid and includes a single entry, trust it's an
+        # explanation.
+        if not feed.bozo and len(feed.entries) == 1:
+            self.entry = feed.entries[0]
+        else:
+            self.entry = None
+        super().__init__(
+            url,
+            retry,
+            "Page request resulted in HTTP {}: {}".format(
+                self.status,
+                self.entry.summary if self.entry else None,
+            ),
+        )
+
+    def __repr__(self) -> str:
+        return '{}({}, {}, {})'.format(
+            _classname(self),
+            repr(self.url),
+            repr(self.retry),
+            repr(self.status)
+        )
+
+ +
+ +

A non-200 status encountered while fetching a page of results.

+ +

See Client.results for usage.

+
+ + +
+
#   + + + HTTPError(url: str, retry: int, feed: feedparser.util.FeedParserDict) +
+ +
+ View Source +
    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
+        """
+        Constructs an `HTTPError` for the specified status code, encountered for
+        the specified API URL after `retry` tries.
+        """
+        self.url = url
+        self.status = feed.status
+        # If the feed is valid and includes a single entry, trust it's an
+        # explanation.
+        if not feed.bozo and len(feed.entries) == 1:
+            self.entry = feed.entries[0]
+        else:
+            self.entry = None
+        super().__init__(
+            url,
+            retry,
+            "Page request resulted in HTTP {}: {}".format(
+                self.status,
+                self.entry.summary if self.entry else None,
+            ),
+        )
+
+ +
+ +

Constructs an HTTPError for the specified status code, encountered for +the specified API URL after retry tries.

+
+ + +
+
+
#   + + status: int +
+ +

The HTTP status reported by feedparser.

+
+ + +
+
+
#   + + entry: feedparser.util.FeedParserDict +
+ +

The feed entry describing the error, if present.

+
+ + +
+
+
Inherited Members
+
+
ArxivError
+
url
+
retry
+
message
+ +
+
builtins.BaseException
+
with_traceback
+
args
+ +
+
+
+
+
+ + + + \ No newline at end of file diff --git a/docs/arxiv/arxiv.html b/docs/arxiv/arxiv.html new file mode 100644 index 0000000..c9974a8 --- /dev/null +++ b/docs/arxiv/arxiv.html @@ -0,0 +1,253 @@ + + + + + + + arxiv.arxiv API documentation + + + + + + + + +
+
+

+arxiv.arxiv

+ + +
+ View Source +
# flake8:noqa
+from .api import *
+
+import warnings
+warnings.warn(
+    "The 'arxiv.arxiv' module is deprecated, use 'arxiv.api' instead",
+    DeprecationWarning,
+    stacklevel=2
+)
+
+ +
+ +
+
+ + + + \ No newline at end of file diff --git a/docs/arxiv/category.html b/docs/arxiv/category.html new file mode 100644 index 0000000..a0027d4 --- /dev/null +++ b/docs/arxiv/category.html @@ -0,0 +1,2748 @@ + + + + + + + arxiv.category API documentation + + + + + + + + +
+
+

+arxiv.category

+ + +
+ View Source +
from enum import Enum
+
+# https://arxiv.org/category_taxonomy
+# cath4s = document.getElementsByTagName("h4")
+# a = Array.from(cath4s)
+# a.shift()
+# strs = a.map(h => `${h.children[0].textContent.replace(
+#   /\W/g, ""
+# )} = "${h.firstChild.textContent.trim()}"`)
+# console.log(strs.join("\n"))
+
+
+class ComputerScience(Enum):
+    ArtificialIntelligence = "cs.AI"
+    HardwareArchitecture = "cs.AR"
+    ComputationalComplexity = "cs.CC"
+    ComputationalEngineeringFinanceAndScience = "cs.CE"
+    ComputationalGeometry = "cs.CG"
+    ComputationAndLanguage = "cs.CL"
+    CryptographyAndSecurity = "cs.CR"
+    ComputerVisionAndPatternRecognition = "cs.CV"
+    ComputersAndSociety = "cs.CY"
+    Databases = "cs.DB"
+    DistributedParallelAndClusterComputing = "cs.DC"
+    DigitalLibraries = "cs.DL"
+    DiscreteMathematics = "cs.DM"
+    DataStructuresAndAlgorithms = "cs.DS"
+    EmergingTechnologies = "cs.ET"
+    FormalLanguagesAndAutomataTheory = "cs.FL"
+    GeneralLiterature = "cs.GL"
+    Graphics = "cs.GR"
+    ComputerScienceAndGameTheory = "cs.GT"
+    HumanComputerInteraction = "cs.HC"
+    InformationRetrieval = "cs.IR"
+    MathInformationTheory = "cs.IT"
+    MachineLearning = "cs.LG"
+    LogicinComputerScience = "cs.LO"
+    MultiagentSystems = "cs.MA"
+    Multimedia = "cs.MM"
+    MathematicalSoftware = "cs.MS"
+    NumericalAnalysis = "cs.NA"
+    NeuralAndEvolutionaryComputing = "cs.NE"
+    NetworkingAndInternetArchitecture = "cs.NI"
+    OtherComputerScience = "cs.OH"
+    OperatingSystems = "cs.OS"
+    Performance = "cs.PF"
+    ProgrammingLanguages = "cs.PL"
+    Robotics = "cs.RO"
+    SymbolicComputation = "cs.SC"
+    Sound = "cs.SD"
+    SoftwareEngineering = "cs.SE"
+    SocialAndInformationNetworks = "cs.SI"
+    SystemsAndControl = "cs.SY"
+
+
+class Economics(Enum):
+    Econometrics = "econ.EM"
+    GeneralEconomics = "econ.GN"
+    TheoreticalEconomics = "econ.TH"
+
+
+class ElectricalEngineeringAndSystemsScience(Enum):
+    AudioAndSpeechProcessing = "eess.AS"
+    ImageAndVideoProcessing = "eess.IV"
+    SignalProcessing = "eess.SP"
+    SystemsAndControl = "eess.SY"
+
+
+class Mathematics(Enum):
+    CommutativeAlgebra = "math.AC"
+    AlgebraicGeometry = "math.AG"
+    AnalysisofPDEs = "math.AP"
+    AlgebraicTopology = "math.AT"
+    ClassicalAnalysisandODEs = "math.CA"
+    Combinatorics = "math.CO"
+    CategoryTheory = "math.CT"
+    ComplexVariables = "math.CV"
+    DifferentialGeometry = "math.DG"
+    DynamicalSystems = "math.DS"
+    FunctionalAnalysis = "math.FA"
+    GeneralMathematics = "math.GM"
+    GeneralTopology = "math.GN"
+    GroupTheory = "math.GR"
+    GeometricTopology = "math.GT"
+    HistoryandOverview = "math.HO"
+    MathInformationTheory = "math.IT"
+    KTheoryandHomology = "math.KT"
+    Logic = "math.LO"
+    MetricGeometry = "math.MG"
+    MathematicalPhysics = "math.MP"
+    NumericalAnalysis = "math.NA"
+    NumberTheory = "math.NT"
+    OperatorAlgebras = "math.OA"
+    OptimizationandControl = "math.OC"
+    Probability = "math.PR"
+    QuantumAlgebra = "math.QA"
+    RingsandAlgebras = "math.RA"
+    RepresentationTheory = "math.RT"
+    SymplecticGeometry = "math.SG"
+    SpectralTheory = "math.SP"
+    StatisticsTheory = "math.ST"
+
+
+class Physics(Enum):
+    CosmologyandNongalacticAstrophysics = "astro-ph.CO"
+    EarthandPlanetaryAstrophysics = "astro-ph.EP"
+    AstrophysicsofGalaxies = "astro-ph.GA"
+    HighEnergyAstrophysicalPhenomena = "astro-ph.HE"
+    InstrumentationandMethodsforAstrophysics = "astro-ph.IM"
+    SolarandStellarAstrophysics = "astro-ph.SR"
+    DisorderedSystemsandNeuralNetworks = "cond-mat.dis-nn"
+    MesoscaleandNanoscalePhysics = "cond-mat.mes-hall"
+    MaterialsScience = "cond-mat.mtrl-sci"
+    OtherCondensedMatter = "cond-mat.other"
+    QuantumGases = "cond-mat.quant-gas"
+    SoftCondensedMatter = "cond-mat.soft"
+    StatisticalMechanics = "cond-mat.stat-mech"
+    StronglyCorrelatedElectrons = "cond-mat.str-el"
+    Superconductivity = "cond-mat.supr-con"
+    GeneralRelativityandQuantumCosmology = "gr-qc"
+    HighEnergyPhysicsExperiment = "hep-ex"
+    HighEnergyPhysicsLattice = "hep-lat"
+    HighEnergyPhysicsPhenomenology = "hep-ph"
+    HighEnergyPhysicsTheory = "hep-th"
+    MathematicalPhysics = "math-ph"
+    AdaptationandSelfOrganizingSystems = "nlin.AO"
+    ChaoticDynamics = "nlin.CD"
+    CellularAutomataandLatticeGases = "nlin.CG"
+    PatternFormationandSolitons = "nlin.PS"
+    ExactlySolvableandIntegrableSystems = "nlin.SI"
+    NuclearExperiment = "nucl-ex"
+    NuclearTheory = "nucl-th"
+    AcceleratorPhysics = "physics.acc-ph"
+    AtmosphericandOceanicPhysics = "physics.ao-ph"
+    AppliedPhysics = "physics.app-ph"
+    AtomicandMolecularClusters = "physics.atm-clus"
+    AtomicPhysics = "physics.atom-ph"
+    BiologicalPhysics = "physics.bio-ph"
+    ChemicalPhysics = "physics.chem-ph"
+    ClassicalPhysics = "physics.class-ph"
+    ComputationalPhysics = "physics.comp-ph"
+    DataAnalysisStatisticsandProbability = "physics.data-an"
+    PhysicsEducation = "physics.ed-ph"
+    FluidDynamics = "physics.flu-dyn"
+    GeneralPhysics = "physics.gen-ph"
+    Geophysics = "physics.geo-ph"
+    HistoryandPhilosophyofPhysics = "physics.hist-ph"
+    InstrumentationandDetectors = "physics.ins-det"
+    MedicalPhysics = "physics.med-ph"
+    Optics = "physics.optics"
+    PlasmaPhysics = "physics.plasm-ph"
+    PopularPhysics = "physics.pop-ph"
+    PhysicsandSociety = "physics.soc-ph"
+    SpacePhysics = "physics.space-ph"
+    QuantumPhysics = "quant-ph"
+
+
+class QuantitativeBiology(Enum):
+    Biomolecules = "q-bio.BM"
+    CellBehavior = "q-bio.CB"
+    Genomics = "q-bio.GN"
+    MolecularNetworks = "q-bio.MN"
+    NeuronsandCognition = "q-bio.NC"
+    OtherQuantitativeBiology = "q-bio.OT"
+    PopulationsandEvolution = "q-bio.PE"
+    QuantitativeMethods = "q-bio.QM"
+    SubcellularProcesses = "q-bio.SC"
+    TissuesandOrgans = "q-bio.TO"
+
+
+class QuantitativeFinance(Enum):
+    ComputationalFinance = "q-fin.CP"
+    Economics = "q-fin.EC"
+    GeneralFinance = "q-fin.GN"
+    MathematicalFinance = "q-fin.MF"
+    PortfolioManagement = "q-fin.PM"
+    PricingofSecurities = "q-fin.PR"
+    RiskManagement = "q-fin.RM"
+    StatisticalFinance = "q-fin.ST"
+    TradingandMarketMicrostructure = "q-fin.TR"
+
+
+class Statistics(Enum):
+    Applications = "stat.AP"
+    Computation = "stat.CO"
+    Methodology = "stat.ME"
+    MachineLearning = "stat.ML"
+    OtherStatistics = "stat.OT"
+    StatisticsTheory = "stat.TH"
+
+ +
+ +
+
+
+ #   + + + class + ComputerScience(enum.Enum): +
+ +
+ View Source +
class ComputerScience(Enum):
+    ArtificialIntelligence = "cs.AI"
+    HardwareArchitecture = "cs.AR"
+    ComputationalComplexity = "cs.CC"
+    ComputationalEngineeringFinanceAndScience = "cs.CE"
+    ComputationalGeometry = "cs.CG"
+    ComputationAndLanguage = "cs.CL"
+    CryptographyAndSecurity = "cs.CR"
+    ComputerVisionAndPatternRecognition = "cs.CV"
+    ComputersAndSociety = "cs.CY"
+    Databases = "cs.DB"
+    DistributedParallelAndClusterComputing = "cs.DC"
+    DigitalLibraries = "cs.DL"
+    DiscreteMathematics = "cs.DM"
+    DataStructuresAndAlgorithms = "cs.DS"
+    EmergingTechnologies = "cs.ET"
+    FormalLanguagesAndAutomataTheory = "cs.FL"
+    GeneralLiterature = "cs.GL"
+    Graphics = "cs.GR"
+    ComputerScienceAndGameTheory = "cs.GT"
+    HumanComputerInteraction = "cs.HC"
+    InformationRetrieval = "cs.IR"
+    MathInformationTheory = "cs.IT"
+    MachineLearning = "cs.LG"
+    LogicinComputerScience = "cs.LO"
+    MultiagentSystems = "cs.MA"
+    Multimedia = "cs.MM"
+    MathematicalSoftware = "cs.MS"
+    NumericalAnalysis = "cs.NA"
+    NeuralAndEvolutionaryComputing = "cs.NE"
+    NetworkingAndInternetArchitecture = "cs.NI"
+    OtherComputerScience = "cs.OH"
+    OperatingSystems = "cs.OS"
+    Performance = "cs.PF"
+    ProgrammingLanguages = "cs.PL"
+    Robotics = "cs.RO"
+    SymbolicComputation = "cs.SC"
+    Sound = "cs.SD"
+    SoftwareEngineering = "cs.SE"
+    SocialAndInformationNetworks = "cs.SI"
+    SystemsAndControl = "cs.SY"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + ArtificialIntelligence = <ComputerScience.ArtificialIntelligence: 'cs.AI'> +
+ + + +
+
+
#   + + HardwareArchitecture = <ComputerScience.HardwareArchitecture: 'cs.AR'> +
+ + + +
+
+
#   + + ComputationalComplexity = <ComputerScience.ComputationalComplexity: 'cs.CC'> +
+ + + +
+
+
#   + + ComputationalEngineeringFinanceAndScience = <ComputerScience.ComputationalEngineeringFinanceAndScience: 'cs.CE'> +
+ + + +
+
+
#   + + ComputationalGeometry = <ComputerScience.ComputationalGeometry: 'cs.CG'> +
+ + + +
+
+
#   + + ComputationAndLanguage = <ComputerScience.ComputationAndLanguage: 'cs.CL'> +
+ + + +
+
+
#   + + CryptographyAndSecurity = <ComputerScience.CryptographyAndSecurity: 'cs.CR'> +
+ + + +
+
+
#   + + ComputerVisionAndPatternRecognition = <ComputerScience.ComputerVisionAndPatternRecognition: 'cs.CV'> +
+ + + +
+
+
#   + + ComputersAndSociety = <ComputerScience.ComputersAndSociety: 'cs.CY'> +
+ + + +
+
+
#   + + Databases = <ComputerScience.Databases: 'cs.DB'> +
+ + + +
+
+
#   + + DistributedParallelAndClusterComputing = <ComputerScience.DistributedParallelAndClusterComputing: 'cs.DC'> +
+ + + +
+
+
#   + + DigitalLibraries = <ComputerScience.DigitalLibraries: 'cs.DL'> +
+ + + +
+
+
#   + + DiscreteMathematics = <ComputerScience.DiscreteMathematics: 'cs.DM'> +
+ + + +
+
+
#   + + DataStructuresAndAlgorithms = <ComputerScience.DataStructuresAndAlgorithms: 'cs.DS'> +
+ + + +
+
+
#   + + EmergingTechnologies = <ComputerScience.EmergingTechnologies: 'cs.ET'> +
+ + + +
+
+
#   + + FormalLanguagesAndAutomataTheory = <ComputerScience.FormalLanguagesAndAutomataTheory: 'cs.FL'> +
+ + + +
+
+
#   + + GeneralLiterature = <ComputerScience.GeneralLiterature: 'cs.GL'> +
+ + + +
+
+
#   + + Graphics = <ComputerScience.Graphics: 'cs.GR'> +
+ + + +
+
+
#   + + ComputerScienceAndGameTheory = <ComputerScience.ComputerScienceAndGameTheory: 'cs.GT'> +
+ + + +
+
+
#   + + HumanComputerInteraction = <ComputerScience.HumanComputerInteraction: 'cs.HC'> +
+ + + +
+
+
#   + + InformationRetrieval = <ComputerScience.InformationRetrieval: 'cs.IR'> +
+ + + +
+
+
#   + + MathInformationTheory = <ComputerScience.MathInformationTheory: 'cs.IT'> +
+ + + +
+
+
#   + + MachineLearning = <ComputerScience.MachineLearning: 'cs.LG'> +
+ + + +
+
+
#   + + LogicinComputerScience = <ComputerScience.LogicinComputerScience: 'cs.LO'> +
+ + + +
+
+
#   + + MultiagentSystems = <ComputerScience.MultiagentSystems: 'cs.MA'> +
+ + + +
+
+
#   + + Multimedia = <ComputerScience.Multimedia: 'cs.MM'> +
+ + + +
+
+
#   + + MathematicalSoftware = <ComputerScience.MathematicalSoftware: 'cs.MS'> +
+ + + +
+
+
#   + + NumericalAnalysis = <ComputerScience.NumericalAnalysis: 'cs.NA'> +
+ + + +
+
+
#   + + NeuralAndEvolutionaryComputing = <ComputerScience.NeuralAndEvolutionaryComputing: 'cs.NE'> +
+ + + +
+
+
#   + + NetworkingAndInternetArchitecture = <ComputerScience.NetworkingAndInternetArchitecture: 'cs.NI'> +
+ + + +
+
+
#   + + OtherComputerScience = <ComputerScience.OtherComputerScience: 'cs.OH'> +
+ + + +
+
+
#   + + OperatingSystems = <ComputerScience.OperatingSystems: 'cs.OS'> +
+ + + +
+
+
#   + + Performance = <ComputerScience.Performance: 'cs.PF'> +
+ + + +
+
+
#   + + ProgrammingLanguages = <ComputerScience.ProgrammingLanguages: 'cs.PL'> +
+ + + +
+
+
#   + + Robotics = <ComputerScience.Robotics: 'cs.RO'> +
+ + + +
+
+
#   + + SymbolicComputation = <ComputerScience.SymbolicComputation: 'cs.SC'> +
+ + + +
+
+
#   + + Sound = <ComputerScience.Sound: 'cs.SD'> +
+ + + +
+
+
#   + + SoftwareEngineering = <ComputerScience.SoftwareEngineering: 'cs.SE'> +
+ + + +
+
+
#   + + SocialAndInformationNetworks = <ComputerScience.SocialAndInformationNetworks: 'cs.SI'> +
+ + + +
+
+
#   + + SystemsAndControl = <ComputerScience.SystemsAndControl: 'cs.SY'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + Economics(enum.Enum): +
+ +
+ View Source +
class Economics(Enum):
+    Econometrics = "econ.EM"
+    GeneralEconomics = "econ.GN"
+    TheoreticalEconomics = "econ.TH"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + Econometrics = <Economics.Econometrics: 'econ.EM'> +
+ + + +
+
+
#   + + GeneralEconomics = <Economics.GeneralEconomics: 'econ.GN'> +
+ + + +
+
+
#   + + TheoreticalEconomics = <Economics.TheoreticalEconomics: 'econ.TH'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + ElectricalEngineeringAndSystemsScience(enum.Enum): +
+ +
+ View Source +
class ElectricalEngineeringAndSystemsScience(Enum):
+    AudioAndSpeechProcessing = "eess.AS"
+    ImageAndVideoProcessing = "eess.IV"
+    SignalProcessing = "eess.SP"
+    SystemsAndControl = "eess.SY"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + AudioAndSpeechProcessing = <ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing: 'eess.AS'> +
+ + + +
+
+
#   + + ImageAndVideoProcessing = <ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing: 'eess.IV'> +
+ + + +
+
+
#   + + SignalProcessing = <ElectricalEngineeringAndSystemsScience.SignalProcessing: 'eess.SP'> +
+ + + +
+
+
#   + + SystemsAndControl = <ElectricalEngineeringAndSystemsScience.SystemsAndControl: 'eess.SY'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + Mathematics(enum.Enum): +
+ +
+ View Source +
class Mathematics(Enum):
+    CommutativeAlgebra = "math.AC"
+    AlgebraicGeometry = "math.AG"
+    AnalysisofPDEs = "math.AP"
+    AlgebraicTopology = "math.AT"
+    ClassicalAnalysisandODEs = "math.CA"
+    Combinatorics = "math.CO"
+    CategoryTheory = "math.CT"
+    ComplexVariables = "math.CV"
+    DifferentialGeometry = "math.DG"
+    DynamicalSystems = "math.DS"
+    FunctionalAnalysis = "math.FA"
+    GeneralMathematics = "math.GM"
+    GeneralTopology = "math.GN"
+    GroupTheory = "math.GR"
+    GeometricTopology = "math.GT"
+    HistoryandOverview = "math.HO"
+    MathInformationTheory = "math.IT"
+    KTheoryandHomology = "math.KT"
+    Logic = "math.LO"
+    MetricGeometry = "math.MG"
+    MathematicalPhysics = "math.MP"
+    NumericalAnalysis = "math.NA"
+    NumberTheory = "math.NT"
+    OperatorAlgebras = "math.OA"
+    OptimizationandControl = "math.OC"
+    Probability = "math.PR"
+    QuantumAlgebra = "math.QA"
+    RingsandAlgebras = "math.RA"
+    RepresentationTheory = "math.RT"
+    SymplecticGeometry = "math.SG"
+    SpectralTheory = "math.SP"
+    StatisticsTheory = "math.ST"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + CommutativeAlgebra = <Mathematics.CommutativeAlgebra: 'math.AC'> +
+ + + +
+
+
#   + + AlgebraicGeometry = <Mathematics.AlgebraicGeometry: 'math.AG'> +
+ + + +
+
+
#   + + AnalysisofPDEs = <Mathematics.AnalysisofPDEs: 'math.AP'> +
+ + + +
+
+
#   + + AlgebraicTopology = <Mathematics.AlgebraicTopology: 'math.AT'> +
+ + + +
+
+
#   + + ClassicalAnalysisandODEs = <Mathematics.ClassicalAnalysisandODEs: 'math.CA'> +
+ + + +
+
+
#   + + Combinatorics = <Mathematics.Combinatorics: 'math.CO'> +
+ + + +
+
+
#   + + CategoryTheory = <Mathematics.CategoryTheory: 'math.CT'> +
+ + + +
+
+
#   + + ComplexVariables = <Mathematics.ComplexVariables: 'math.CV'> +
+ + + +
+
+
#   + + DifferentialGeometry = <Mathematics.DifferentialGeometry: 'math.DG'> +
+ + + +
+
+
#   + + DynamicalSystems = <Mathematics.DynamicalSystems: 'math.DS'> +
+ + + +
+
+
#   + + FunctionalAnalysis = <Mathematics.FunctionalAnalysis: 'math.FA'> +
+ + + +
+
+
#   + + GeneralMathematics = <Mathematics.GeneralMathematics: 'math.GM'> +
+ + + +
+
+
#   + + GeneralTopology = <Mathematics.GeneralTopology: 'math.GN'> +
+ + + +
+
+
#   + + GroupTheory = <Mathematics.GroupTheory: 'math.GR'> +
+ + + +
+
+
#   + + GeometricTopology = <Mathematics.GeometricTopology: 'math.GT'> +
+ + + +
+
+
#   + + HistoryandOverview = <Mathematics.HistoryandOverview: 'math.HO'> +
+ + + +
+
+
#   + + MathInformationTheory = <Mathematics.MathInformationTheory: 'math.IT'> +
+ + + +
+
+
#   + + KTheoryandHomology = <Mathematics.KTheoryandHomology: 'math.KT'> +
+ + + +
+
+
#   + + Logic = <Mathematics.Logic: 'math.LO'> +
+ + + +
+
+
#   + + MetricGeometry = <Mathematics.MetricGeometry: 'math.MG'> +
+ + + +
+
+
#   + + MathematicalPhysics = <Mathematics.MathematicalPhysics: 'math.MP'> +
+ + + +
+
+
#   + + NumericalAnalysis = <Mathematics.NumericalAnalysis: 'math.NA'> +
+ + + +
+
+
#   + + NumberTheory = <Mathematics.NumberTheory: 'math.NT'> +
+ + + +
+
+
#   + + OperatorAlgebras = <Mathematics.OperatorAlgebras: 'math.OA'> +
+ + + +
+
+
#   + + OptimizationandControl = <Mathematics.OptimizationandControl: 'math.OC'> +
+ + + +
+
+
#   + + Probability = <Mathematics.Probability: 'math.PR'> +
+ + + +
+
+
#   + + QuantumAlgebra = <Mathematics.QuantumAlgebra: 'math.QA'> +
+ + + +
+
+
#   + + RingsandAlgebras = <Mathematics.RingsandAlgebras: 'math.RA'> +
+ + + +
+
+
#   + + RepresentationTheory = <Mathematics.RepresentationTheory: 'math.RT'> +
+ + + +
+
+
#   + + SymplecticGeometry = <Mathematics.SymplecticGeometry: 'math.SG'> +
+ + + +
+
+
#   + + SpectralTheory = <Mathematics.SpectralTheory: 'math.SP'> +
+ + + +
+
+
#   + + StatisticsTheory = <Mathematics.StatisticsTheory: 'math.ST'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + Physics(enum.Enum): +
+ +
+ View Source +
class Physics(Enum):
+    CosmologyandNongalacticAstrophysics = "astro-ph.CO"
+    EarthandPlanetaryAstrophysics = "astro-ph.EP"
+    AstrophysicsofGalaxies = "astro-ph.GA"
+    HighEnergyAstrophysicalPhenomena = "astro-ph.HE"
+    InstrumentationandMethodsforAstrophysics = "astro-ph.IM"
+    SolarandStellarAstrophysics = "astro-ph.SR"
+    DisorderedSystemsandNeuralNetworks = "cond-mat.dis-nn"
+    MesoscaleandNanoscalePhysics = "cond-mat.mes-hall"
+    MaterialsScience = "cond-mat.mtrl-sci"
+    OtherCondensedMatter = "cond-mat.other"
+    QuantumGases = "cond-mat.quant-gas"
+    SoftCondensedMatter = "cond-mat.soft"
+    StatisticalMechanics = "cond-mat.stat-mech"
+    StronglyCorrelatedElectrons = "cond-mat.str-el"
+    Superconductivity = "cond-mat.supr-con"
+    GeneralRelativityandQuantumCosmology = "gr-qc"
+    HighEnergyPhysicsExperiment = "hep-ex"
+    HighEnergyPhysicsLattice = "hep-lat"
+    HighEnergyPhysicsPhenomenology = "hep-ph"
+    HighEnergyPhysicsTheory = "hep-th"
+    MathematicalPhysics = "math-ph"
+    AdaptationandSelfOrganizingSystems = "nlin.AO"
+    ChaoticDynamics = "nlin.CD"
+    CellularAutomataandLatticeGases = "nlin.CG"
+    PatternFormationandSolitons = "nlin.PS"
+    ExactlySolvableandIntegrableSystems = "nlin.SI"
+    NuclearExperiment = "nucl-ex"
+    NuclearTheory = "nucl-th"
+    AcceleratorPhysics = "physics.acc-ph"
+    AtmosphericandOceanicPhysics = "physics.ao-ph"
+    AppliedPhysics = "physics.app-ph"
+    AtomicandMolecularClusters = "physics.atm-clus"
+    AtomicPhysics = "physics.atom-ph"
+    BiologicalPhysics = "physics.bio-ph"
+    ChemicalPhysics = "physics.chem-ph"
+    ClassicalPhysics = "physics.class-ph"
+    ComputationalPhysics = "physics.comp-ph"
+    DataAnalysisStatisticsandProbability = "physics.data-an"
+    PhysicsEducation = "physics.ed-ph"
+    FluidDynamics = "physics.flu-dyn"
+    GeneralPhysics = "physics.gen-ph"
+    Geophysics = "physics.geo-ph"
+    HistoryandPhilosophyofPhysics = "physics.hist-ph"
+    InstrumentationandDetectors = "physics.ins-det"
+    MedicalPhysics = "physics.med-ph"
+    Optics = "physics.optics"
+    PlasmaPhysics = "physics.plasm-ph"
+    PopularPhysics = "physics.pop-ph"
+    PhysicsandSociety = "physics.soc-ph"
+    SpacePhysics = "physics.space-ph"
+    QuantumPhysics = "quant-ph"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + CosmologyandNongalacticAstrophysics = <Physics.CosmologyandNongalacticAstrophysics: 'astro-ph.CO'> +
+ + + +
+
+
#   + + EarthandPlanetaryAstrophysics = <Physics.EarthandPlanetaryAstrophysics: 'astro-ph.EP'> +
+ + + +
+
+
#   + + AstrophysicsofGalaxies = <Physics.AstrophysicsofGalaxies: 'astro-ph.GA'> +
+ + + +
+
+
#   + + HighEnergyAstrophysicalPhenomena = <Physics.HighEnergyAstrophysicalPhenomena: 'astro-ph.HE'> +
+ + + +
+
+
#   + + InstrumentationandMethodsforAstrophysics = <Physics.InstrumentationandMethodsforAstrophysics: 'astro-ph.IM'> +
+ + + +
+
+
#   + + SolarandStellarAstrophysics = <Physics.SolarandStellarAstrophysics: 'astro-ph.SR'> +
+ + + +
+
+
#   + + DisorderedSystemsandNeuralNetworks = <Physics.DisorderedSystemsandNeuralNetworks: 'cond-mat.dis-nn'> +
+ + + +
+
+
#   + + MesoscaleandNanoscalePhysics = <Physics.MesoscaleandNanoscalePhysics: 'cond-mat.mes-hall'> +
+ + + +
+
+
#   + + MaterialsScience = <Physics.MaterialsScience: 'cond-mat.mtrl-sci'> +
+ + + +
+
+
#   + + OtherCondensedMatter = <Physics.OtherCondensedMatter: 'cond-mat.other'> +
+ + + +
+
+
#   + + QuantumGases = <Physics.QuantumGases: 'cond-mat.quant-gas'> +
+ + + +
+
+
#   + + SoftCondensedMatter = <Physics.SoftCondensedMatter: 'cond-mat.soft'> +
+ + + +
+
+
#   + + StatisticalMechanics = <Physics.StatisticalMechanics: 'cond-mat.stat-mech'> +
+ + + +
+
+
#   + + StronglyCorrelatedElectrons = <Physics.StronglyCorrelatedElectrons: 'cond-mat.str-el'> +
+ + + +
+
+
#   + + Superconductivity = <Physics.Superconductivity: 'cond-mat.supr-con'> +
+ + + +
+
+
#   + + GeneralRelativityandQuantumCosmology = <Physics.GeneralRelativityandQuantumCosmology: 'gr-qc'> +
+ + + +
+
+
#   + + HighEnergyPhysicsExperiment = <Physics.HighEnergyPhysicsExperiment: 'hep-ex'> +
+ + + +
+
+
#   + + HighEnergyPhysicsLattice = <Physics.HighEnergyPhysicsLattice: 'hep-lat'> +
+ + + +
+
+
#   + + HighEnergyPhysicsPhenomenology = <Physics.HighEnergyPhysicsPhenomenology: 'hep-ph'> +
+ + + +
+
+
#   + + HighEnergyPhysicsTheory = <Physics.HighEnergyPhysicsTheory: 'hep-th'> +
+ + + +
+
+
#   + + MathematicalPhysics = <Physics.MathematicalPhysics: 'math-ph'> +
+ + + +
+
+
#   + + AdaptationandSelfOrganizingSystems = <Physics.AdaptationandSelfOrganizingSystems: 'nlin.AO'> +
+ + + +
+
+
#   + + ChaoticDynamics = <Physics.ChaoticDynamics: 'nlin.CD'> +
+ + + +
+
+
#   + + CellularAutomataandLatticeGases = <Physics.CellularAutomataandLatticeGases: 'nlin.CG'> +
+ + + +
+
+
#   + + PatternFormationandSolitons = <Physics.PatternFormationandSolitons: 'nlin.PS'> +
+ + + +
+
+
#   + + ExactlySolvableandIntegrableSystems = <Physics.ExactlySolvableandIntegrableSystems: 'nlin.SI'> +
+ + + +
+
+
#   + + NuclearExperiment = <Physics.NuclearExperiment: 'nucl-ex'> +
+ + + +
+
+
#   + + NuclearTheory = <Physics.NuclearTheory: 'nucl-th'> +
+ + + +
+
+
#   + + AcceleratorPhysics = <Physics.AcceleratorPhysics: 'physics.acc-ph'> +
+ + + +
+
+
#   + + AtmosphericandOceanicPhysics = <Physics.AtmosphericandOceanicPhysics: 'physics.ao-ph'> +
+ + + +
+
+
#   + + AppliedPhysics = <Physics.AppliedPhysics: 'physics.app-ph'> +
+ + + +
+
+
#   + + AtomicandMolecularClusters = <Physics.AtomicandMolecularClusters: 'physics.atm-clus'> +
+ + + +
+
+
#   + + AtomicPhysics = <Physics.AtomicPhysics: 'physics.atom-ph'> +
+ + + +
+
+
#   + + BiologicalPhysics = <Physics.BiologicalPhysics: 'physics.bio-ph'> +
+ + + +
+
+
#   + + ChemicalPhysics = <Physics.ChemicalPhysics: 'physics.chem-ph'> +
+ + + +
+
+
#   + + ClassicalPhysics = <Physics.ClassicalPhysics: 'physics.class-ph'> +
+ + + +
+
+
#   + + ComputationalPhysics = <Physics.ComputationalPhysics: 'physics.comp-ph'> +
+ + + +
+
+
#   + + DataAnalysisStatisticsandProbability = <Physics.DataAnalysisStatisticsandProbability: 'physics.data-an'> +
+ + + +
+
+
#   + + PhysicsEducation = <Physics.PhysicsEducation: 'physics.ed-ph'> +
+ + + +
+
+
#   + + FluidDynamics = <Physics.FluidDynamics: 'physics.flu-dyn'> +
+ + + +
+
+
#   + + GeneralPhysics = <Physics.GeneralPhysics: 'physics.gen-ph'> +
+ + + +
+
+
#   + + Geophysics = <Physics.Geophysics: 'physics.geo-ph'> +
+ + + +
+
+
#   + + HistoryandPhilosophyofPhysics = <Physics.HistoryandPhilosophyofPhysics: 'physics.hist-ph'> +
+ + + +
+
+
#   + + InstrumentationandDetectors = <Physics.InstrumentationandDetectors: 'physics.ins-det'> +
+ + + +
+
+
#   + + MedicalPhysics = <Physics.MedicalPhysics: 'physics.med-ph'> +
+ + + +
+
+
#   + + Optics = <Physics.Optics: 'physics.optics'> +
+ + + +
+
+
#   + + PlasmaPhysics = <Physics.PlasmaPhysics: 'physics.plasm-ph'> +
+ + + +
+
+
#   + + PopularPhysics = <Physics.PopularPhysics: 'physics.pop-ph'> +
+ + + +
+
+
#   + + PhysicsandSociety = <Physics.PhysicsandSociety: 'physics.soc-ph'> +
+ + + +
+
+
#   + + SpacePhysics = <Physics.SpacePhysics: 'physics.space-ph'> +
+ + + +
+
+
#   + + QuantumPhysics = <Physics.QuantumPhysics: 'quant-ph'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + QuantitativeBiology(enum.Enum): +
+ +
+ View Source +
class QuantitativeBiology(Enum):
+    Biomolecules = "q-bio.BM"
+    CellBehavior = "q-bio.CB"
+    Genomics = "q-bio.GN"
+    MolecularNetworks = "q-bio.MN"
+    NeuronsandCognition = "q-bio.NC"
+    OtherQuantitativeBiology = "q-bio.OT"
+    PopulationsandEvolution = "q-bio.PE"
+    QuantitativeMethods = "q-bio.QM"
+    SubcellularProcesses = "q-bio.SC"
+    TissuesandOrgans = "q-bio.TO"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + Biomolecules = <QuantitativeBiology.Biomolecules: 'q-bio.BM'> +
+ + + +
+
+
#   + + CellBehavior = <QuantitativeBiology.CellBehavior: 'q-bio.CB'> +
+ + + +
+
+
#   + + Genomics = <QuantitativeBiology.Genomics: 'q-bio.GN'> +
+ + + +
+
+
#   + + MolecularNetworks = <QuantitativeBiology.MolecularNetworks: 'q-bio.MN'> +
+ + + +
+
+
#   + + NeuronsandCognition = <QuantitativeBiology.NeuronsandCognition: 'q-bio.NC'> +
+ + + +
+
+
#   + + OtherQuantitativeBiology = <QuantitativeBiology.OtherQuantitativeBiology: 'q-bio.OT'> +
+ + + +
+
+
#   + + PopulationsandEvolution = <QuantitativeBiology.PopulationsandEvolution: 'q-bio.PE'> +
+ + + +
+
+
#   + + QuantitativeMethods = <QuantitativeBiology.QuantitativeMethods: 'q-bio.QM'> +
+ + + +
+
+
#   + + SubcellularProcesses = <QuantitativeBiology.SubcellularProcesses: 'q-bio.SC'> +
+ + + +
+
+
#   + + TissuesandOrgans = <QuantitativeBiology.TissuesandOrgans: 'q-bio.TO'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + QuantitativeFinance(enum.Enum): +
+ +
+ View Source +
class QuantitativeFinance(Enum):
+    ComputationalFinance = "q-fin.CP"
+    Economics = "q-fin.EC"
+    GeneralFinance = "q-fin.GN"
+    MathematicalFinance = "q-fin.MF"
+    PortfolioManagement = "q-fin.PM"
+    PricingofSecurities = "q-fin.PR"
+    RiskManagement = "q-fin.RM"
+    StatisticalFinance = "q-fin.ST"
+    TradingandMarketMicrostructure = "q-fin.TR"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + ComputationalFinance = <QuantitativeFinance.ComputationalFinance: 'q-fin.CP'> +
+ + + +
+
+
#   + + Economics = <QuantitativeFinance.Economics: 'q-fin.EC'> +
+ + + +
+
+
#   + + GeneralFinance = <QuantitativeFinance.GeneralFinance: 'q-fin.GN'> +
+ + + +
+
+
#   + + MathematicalFinance = <QuantitativeFinance.MathematicalFinance: 'q-fin.MF'> +
+ + + +
+
+
#   + + PortfolioManagement = <QuantitativeFinance.PortfolioManagement: 'q-fin.PM'> +
+ + + +
+
+
#   + + PricingofSecurities = <QuantitativeFinance.PricingofSecurities: 'q-fin.PR'> +
+ + + +
+
+
#   + + RiskManagement = <QuantitativeFinance.RiskManagement: 'q-fin.RM'> +
+ + + +
+
+
#   + + StatisticalFinance = <QuantitativeFinance.StatisticalFinance: 'q-fin.ST'> +
+ + + +
+
+
#   + + TradingandMarketMicrostructure = <QuantitativeFinance.TradingandMarketMicrostructure: 'q-fin.TR'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + Statistics(enum.Enum): +
+ +
+ View Source +
class Statistics(Enum):
+    Applications = "stat.AP"
+    Computation = "stat.CO"
+    Methodology = "stat.ME"
+    MachineLearning = "stat.ML"
+    OtherStatistics = "stat.OT"
+    StatisticsTheory = "stat.TH"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + Applications = <Statistics.Applications: 'stat.AP'> +
+ + + +
+
+
#   + + Computation = <Statistics.Computation: 'stat.CO'> +
+ + + +
+
+
#   + + Methodology = <Statistics.Methodology: 'stat.ME'> +
+ + + +
+
+
#   + + MachineLearning = <Statistics.MachineLearning: 'stat.ML'> +
+ + + +
+
+
#   + + OtherStatistics = <Statistics.OtherStatistics: 'stat.OT'> +
+ + + +
+
+
#   + + StatisticsTheory = <Statistics.StatisticsTheory: 'stat.TH'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+ + + + \ No newline at end of file diff --git a/docs/arxiv/query.html b/docs/arxiv/query.html new file mode 100644 index 0000000..71dca66 --- /dev/null +++ b/docs/arxiv/query.html @@ -0,0 +1,722 @@ + + + + + + + arxiv.query API documentation + + + + + + + + +
+
+

+arxiv.query

+ + +
+ View Source +
from enum import Enum
+
+
+class Query(object):
+    _query_string: str
+
+    # TODO: need helper to build query_string with a key/val pair, e.g. cat:ABC
+    def __init__(self, query_string: str = ""):
+        self._query_string = query_string
+
+    # FIXME: check if value is a Category?
+    def attribute(attribute: "Attribute", value: str) -> "Query":
+        return Query('{}:"{}"'.format(attribute.value, value))
+
+    def __compose(self, other: "Query", operator: "Query.Operator"):
+        return Query("({}) {} ({})".format(
+            self._query_string,
+            operator.value,
+            other._query_string,
+        ))
+
+    def AND(self, other: "Query"):
+        return self.__compose(other, Query.Operator.And)
+
+    def OR(self, other: "Query"):
+        return self.__compose(other, Query.Operator.Or)
+
+    def ANDNOT(self, other: "Query"):
+        return self.__compose(other, Query.Operator.AndNot)
+
+    class Operator(Enum):
+        And = "AND"
+        Or = "OR"
+        AndNot = "ANDNOT"
+
+    def to_string(self):
+        return self._query_string
+
+
+class Attribute(Enum):
+    """
+    See https://arxiv.org/help/api/user-manual#query_details.
+    """
+    Title = "ti"
+    Author = "au"
+    Abstract = "abs"
+    Comment = "co"
+    JournalReference = "jr"
+    Category = "cat"
+    ReportNumber = "rn"
+    ID = "id"  # NOTE: prefer id_list when possible.
+    All = "all"
+
+ +
+ +
+
+
+ #   + + + class + Query: +
+ +
+ View Source +
class Query(object):
+    _query_string: str
+
+    # TODO: need helper to build query_string with a key/val pair, e.g. cat:ABC
+    def __init__(self, query_string: str = ""):
+        self._query_string = query_string
+
+    # FIXME: check if value is a Category?
+    def attribute(attribute: "Attribute", value: str) -> "Query":
+        return Query('{}:"{}"'.format(attribute.value, value))
+
+    def __compose(self, other: "Query", operator: "Query.Operator"):
+        return Query("({}) {} ({})".format(
+            self._query_string,
+            operator.value,
+            other._query_string,
+        ))
+
+    def AND(self, other: "Query"):
+        return self.__compose(other, Query.Operator.And)
+
+    def OR(self, other: "Query"):
+        return self.__compose(other, Query.Operator.Or)
+
+    def ANDNOT(self, other: "Query"):
+        return self.__compose(other, Query.Operator.AndNot)
+
+    class Operator(Enum):
+        And = "AND"
+        Or = "OR"
+        AndNot = "ANDNOT"
+
+    def to_string(self):
+        return self._query_string
+
+ +
+ + + +
+
#   + + + Query(query_string: str = '') +
+ +
+ View Source +
    def __init__(self, query_string: str = ""):
+        self._query_string = query_string
+
+ +
+ + + +
+
+
#   + + + def + attribute(attribute: arxiv.query.Attribute, value: str) -> arxiv.query.Query: +
+ +
+ View Source +
    def attribute(attribute: "Attribute", value: str) -> "Query":
+        return Query('{}:"{}"'.format(attribute.value, value))
+
+ +
+ + + +
+
+
#   + + + def + AND(self, other: arxiv.query.Query): +
+ +
+ View Source +
    def AND(self, other: "Query"):
+        return self.__compose(other, Query.Operator.And)
+
+ +
+ + + +
+
+
#   + + + def + OR(self, other: arxiv.query.Query): +
+ +
+ View Source +
    def OR(self, other: "Query"):
+        return self.__compose(other, Query.Operator.Or)
+
+ +
+ + + +
+
+
#   + + + def + ANDNOT(self, other: arxiv.query.Query): +
+ +
+ View Source +
    def ANDNOT(self, other: "Query"):
+        return self.__compose(other, Query.Operator.AndNot)
+
+ +
+ + + +
+
+
#   + + + def + to_string(self): +
+ +
+ View Source +
    def to_string(self):
+        return self._query_string
+
+ +
+ + + +
+
+
+
+ #   + + + class + Query.Operator(enum.Enum): +
+ +
+ View Source +
    class Operator(Enum):
+        And = "AND"
+        Or = "OR"
+        AndNot = "ANDNOT"
+
+ +
+ +

An enumeration.

+
+ + +
+
#   + + And = <Operator.And: 'AND'> +
+ + + +
+
+
#   + + Or = <Operator.Or: 'OR'> +
+ + + +
+
+
#   + + AndNot = <Operator.AndNot: 'ANDNOT'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+
+ #   + + + class + Attribute(enum.Enum): +
+ +
+ View Source +
class Attribute(Enum):
+    """
+    See https://arxiv.org/help/api/user-manual#query_details.
+    """
+    Title = "ti"
+    Author = "au"
+    Abstract = "abs"
+    Comment = "co"
+    JournalReference = "jr"
+    Category = "cat"
+    ReportNumber = "rn"
+    ID = "id"  # NOTE: prefer id_list when possible.
+    All = "all"
+
+ +
+ +

See https://arxiv.org/help/api/user-manual#query_details.

+
+ + +
+
#   + + Title = <Attribute.Title: 'ti'> +
+ + + +
+
+
#   + + Author = <Attribute.Author: 'au'> +
+ + + +
+
+
#   + + Abstract = <Attribute.Abstract: 'abs'> +
+ + + +
+
+
#   + + Comment = <Attribute.Comment: 'co'> +
+ + + +
+
+
#   + + JournalReference = <Attribute.JournalReference: 'jr'> +
+ + + +
+
+
#   + + Category = <Attribute.Category: 'cat'> +
+ + + +
+
+
#   + + ReportNumber = <Attribute.ReportNumber: 'rn'> +
+ + + +
+
+
#   + + ID = <Attribute.ID: 'id'> +
+ + + +
+
+
#   + + All = <Attribute.All: 'all'> +
+ + + +
+
+
Inherited Members
+
+
enum.Enum
+
name
+
value
+ +
+
+
+
+
+ + + + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 5c55ca0..f20011f 100644 --- a/docs/index.html +++ b/docs/index.html @@ -4,3515 +4,250 @@ - arxiv.arxiv API documentation + Module List – pdoc 7.1.1 - + - - + + +
+ + pdoc logo + + +
-
-

-arxiv.arxiv

- -

arxiv.py Python 3.6 PyPI GitHub Workflow Status (branch)

- -

Python wrapper for the arXiv API.

- - - - - -

About arXiv

- -

arXiv is a project by the Cornell University Library that provides open access to 1,000,000+ articles in Physics, Mathematics, Computer Science, Quantitative Biology, Quantitative Finance, and Statistics.

- -

Usage

- -

Installation

- -
$ pip install arxiv
-
- -

In your Python script, include the line

- -
import arxiv
-
- - - -

A Search specifies a search of arXiv's database.

- -
arxiv.Search(
-  query: str = "",
-  id_list: List[str] = [],
-  max_results: float = float('inf'),
-  sort_by: SortCriterion = SortCriterion.Relevanvce,
-  sort_order: SortOrder = SortOrder.Descending
-)
-
- -
    -
  • query: an arXiv query string. Advanced query formats are documented in the arXiv API User Manual.
  • -
  • id_list: list of arXiv record IDs (typically of the format "0710.5765v1"). See the arXiv API User's Manual for documentation of the interaction between query and id_list.
  • -
  • max_results: The maximum number of results to be returned in an execution of this search. To fetch every result available, set max_results=float('inf') (default); to fetch up to 10 results, set max_results=10. The API's limit is 300,000 results.
  • -
  • sort_by: The sort criterion for results: relevance, lastUpdatedDate, or submittedDate.
  • -
  • sort_order: The sort order for results: 'descending' or 'ascending'.
  • -
- -

To fetch arXiv records matching a Search, use search.results() or (Client).results(search) to get a generator yielding Results.

- -

Example: fetching results

- -

Print the titles fo the 10 most recent articles related to the keyword "quantum:"

- -
import arxiv
-
-search = arxiv.Search(
-  query = "quantum",
-  max_results = 10,
-  sort_by = arxiv.SortCriterion.SubmittedDate
-)
-
-for result in search.results():
-  print(result.title)
-
- -

Fetch and print the title of the paper with ID "1605.08386v1:"

- -
import arxiv
-
-search = arxiv.Search(id_list=["1605.08386v1"])
-paper = next(search.results())
-print(paper.title)
-
- -

Result

- - - -

The Result objects yielded by (Search).results() include metadata about each paper and some helper functions for downloading their content.

- -

The meaning of the underlying raw data is documented in the arXiv API User Manual: Details of Atom Results Returned.

- -
    -
  • result.entry_id: A url http://arxiv.org/abs/{id}.
  • -
  • result.updated: When the result was last updated.
  • -
  • result.published: When the result was originally published.
  • -
  • result.title: The title of the result.
  • -
  • result.authors: The result's authors, as arxiv.Authors.
  • -
  • result.summary: The result abstract.
  • -
  • result.comment: The authors' comment if present.
  • -
  • result.journal_ref: A journal reference if present.
  • -
  • result.doi: A URL for the resolved DOI to an external resource if present.
  • -
  • result.primary_category: The result's primary arXiv category. See arXiv: Category Taxonomy.
  • -
  • result.categories: All of the result's categories. See arXiv: Category Taxonomy.
  • -
  • result.links: Up to three URLs associated with this result, as arxiv.Links.
  • -
  • result.pdf_url: A URL for the result's PDF if present. Note: this URL also appears among result.links.
  • -
- -

They also expose helper methods for downloading papers: (Result).download_pdf() and (Result).download_source().

- -

Example: downloading papers

- -

To download a PDF of the paper with ID "1605.08386v1," run a Search and then use (Result).download_pdf():

- -
import arxiv
-
-paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
-# Download the PDF to the PWD with a default filename.
-paper.download_pdf()
-# Download the PDF to the PWD with a custom filename.
-paper.download_pdf(filename="downloaded-paper.pdf")
-# Download the PDF to a specified directory with a custom filename.
-paper.download_pdf(dirpath="./mydir", filename="downloaded-paper.pdf")
-
- -

The same interface is available for downloading .tar.gz files of the paper source:

- -
import arxiv
-
-paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
-# Download the archive to the PWD with a default filename.
-paper.download_source()
-# Download the archive to the PWD with a custom filename.
-paper.download_source(filename="downloaded-paper.tar.gz")
-# Download the archive to a specified directory with a custom filename.
-paper.download_source(dirpath="./mydir", filename="downloaded-paper.tar.gz")
-
- -

Client

- -

A Client specifies a strategy for fetching results from arXiv's API; it obscures pagination and retry logic.

- -

For most use cases the default client should suffice. You can construct it explicitly with arxiv.Client(), or use it via the (Search).results() method.

- -
arxiv.Client(
-  page_size: int = 100,
-  delay_seconds: int = 3,
-  num_retries: int = 3
-)
-
- -
    -
  • page_size: the number of papers to fetch from arXiv per page of results. Smaller pages can be retrieved faster, but may require more round-trips. The API's limit is 2000 results.
  • -
  • delay_seconds: the number of seconds to wait between requests for pages. arXiv's Terms of Use ask that you "make no more than one request every three seconds."
  • -
  • num_retries: The number of times the client will retry a request that fails, either with a non-200 HTTP status code or with an unexpected number of results given the search parameters.
  • -
- -

Example: fetching results with a custom client

- -

(Search).results() uses the default client settings. If you want to use a client you've defined instead of the defaults, use (Client).results(...):

- -
import arxiv
-
-big_slow_client = arxiv.Client(
-  page_size = 1000,
-  delay_seconds = 10,
-  num_retries = 5
-)
-
-# Prints 1000 titles before needing to make another request.
-for result in big_slow_client.results(arxiv.Search(query="quantum")):
-  print(result.title)
-
- -

Example: logging

- -

To inspect this package's network behavior and API logic, configure an INFO-level logger.

- -
>>> import logging, arxiv
->>> logging.basicConfig(level=logging.INFO)
->>> paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())
-INFO:arxiv.arxiv:Requesting 100 results at offset 0
-INFO:arxiv.arxiv:Requesting page of results
-INFO:arxiv.arxiv:Got first page; 1 of inf results available
-
-
- -
- View Source -
""".. include:: ../README.md"""
-import logging
-import time
-import feedparser
-import re
-import os
-import warnings
-
-from urllib.parse import urlencode
-from urllib.request import urlretrieve
-from datetime import datetime, timedelta, timezone
-from calendar import timegm
-
-from enum import Enum
-from typing import Dict, Generator, List
-
-logger = logging.getLogger(__name__)
-
-_DEFAULT_TIME = datetime.min
-
-
-class Result(object):
-    """
-    An entry in an arXiv query results feed.
-
-    See [the arXiv API User's Manual: Details of Atom Results
-    Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned).
-    """
-
-    entry_id: str
-    """A url of the form `http://arxiv.org/abs/{id}`."""
-    updated: time.struct_time
-    """When the result was last updated."""
-    published: time.struct_time
-    """When the result was originally published."""
-    title: str
-    """The title of the result."""
-    authors: list
-    """The result's authors."""
-    summary: str
-    """The result abstrace."""
-    comment: str
-    """The authors' comment if present."""
-    journal_ref: str
-    """A journal reference if present."""
-    doi: str
-    """A URL for the resolved DOI to an external resource if present."""
-    primary_category: str
-    """
-    The result's primary arXiv category. See [arXiv: Category
-    Taxonomy](https://arxiv.org/category_taxonomy).
-    """
-    categories: List[str]
-    """
-    All of the result's categories. See [arXiv: Category
-    Taxonomy](https://arxiv.org/category_taxonomy).
-    """
-    links: list
-    """Up to three URLs associated with this result."""
-    pdf_url: str
-    """The URL of a PDF version of this result if present among links."""
-    _raw: feedparser.FeedParserDict
-    """
-    The raw feedparser result object if this Result was constructed with
-    Result._from_feed_entry.
-    """
-
-    def __init__(
-        self,
-        entry_id: str,
-        updated: datetime = _DEFAULT_TIME,
-        published: datetime = _DEFAULT_TIME,
-        title: str = "",
-        authors: List['Result.Author'] = [],
-        summary: str = "",
-        comment: str = "",
-        journal_ref: str = "",
-        doi: str = "",
-        primary_category: str = "",
-        categories: List[str] = [],
-        links: List['Result.Link'] = [],
-        _raw: feedparser.FeedParserDict = None,
-    ):
-        """
-        Constructs an arXiv search result item.
-
-        In most cases, prefer using `Result._from_feed_entry` to parsing and
-        constructing `Result`s yourself.
-        """
-        self.entry_id = entry_id
-        self.updated = updated
-        self.published = published
-        self.title = title
-        self.authors = authors
-        self.summary = summary
-        self.comment = comment
-        self.journal_ref = journal_ref
-        self.doi = doi
-        self.primary_category = primary_category
-        self.categories = categories
-        self.links = links
-        # Calculated members
-        self.pdf_url = Result._get_pdf_url(links)
-        # Debugging
-        self._raw = _raw
-
-    def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result':
-        """
-        Converts a feedparser entry for an arXiv search result feed into a
-        Result object.
-        """
-        if not hasattr(entry, "id"):
-            raise Result.MissingFieldError("id")
-        # Title attribute may be absent for certain titles. Defaulting to "0" as
-        # it's the only title observed to cause this bug.
-        # https://github.com/lukasschwab/arxiv.py/issues/71
-        # title = entry.title if hasattr(entry, "title") else "0"
-        title = "0"
-        if hasattr(entry, "title"):
-            title = entry.title
-        else:
-            logger.warning(
-                "Result %s is missing title attribute; defaulting to '0'",
-                entry.id
-            )
-        return Result(
-            entry_id=entry.id,
-            updated=Result._to_datetime(entry.updated_parsed),
-            published=Result._to_datetime(entry.published_parsed),
-            title=re.sub(r'\s+', ' ', title),
-            authors=[Result.Author._from_feed_author(a) for a in entry.authors],
-            summary=entry.summary,
-            comment=entry.get('arxiv_comment'),
-            journal_ref=entry.get('arxiv_journal_ref'),
-            doi=entry.get('arxiv_doi'),
-            primary_category=entry.arxiv_primary_category.get('term'),
-            categories=[tag.get('term') for tag in entry.tags],
-            links=[Result.Link._from_feed_link(link) for link in entry.links],
-            _raw=entry
-        )
-
-    def __str__(self) -> str:
-        return self.entry_id
-
-    def __repr__(self) -> str:
-        return (
-            '{}(entry_id={}, updated={}, published={}, title={}, authors={}, '
-            'summary={}, comment={}, journal_ref={}, doi={}, '
-            'primary_category={}, categories={}, links={})'
-        ).format(
-            _classname(self),
-            repr(self.entry_id),
-            repr(self.updated),
-            repr(self.published),
-            repr(self.title),
-            repr(self.authors),
-            repr(self.summary),
-            repr(self.comment),
-            repr(self.journal_ref),
-            repr(self.doi),
-            repr(self.primary_category),
-            repr(self.categories),
-            repr(self.links)
-        )
-
-    def __eq__(self, other) -> bool:
-        if isinstance(other, Result):
-            return self.entry_id == other.entry_id
-        return False
-
-    def get_short_id(self) -> str:
-        """
-        Returns the short ID for this result.
-
-        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
-        `result.get_short_id()` returns `2107.05580v1`.
-
-        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
-        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
-        2007 arXiv identifier format).
-
-        For an explanation of the difference between arXiv's legacy and current
-        identifiers, see [Understanding the arXiv
-        identifier](https://arxiv.org/help/arxiv_identifier).
-        """
-        return self.entry_id.split('arxiv.org/abs/')[-1]
-
-    def _get_default_filename(self, extension: str = "pdf") -> str:
-        """
-        A default `to_filename` function for the extension given.
-        """
-        nonempty_title = self.title if self.title else "UNTITLED"
-        # Remove disallowed characters.
-        clean_title = '_'.join(re.findall(r'\w+', nonempty_title))
-        return "{}.{}.{}".format(self.get_short_id(), clean_title, extension)
-
-    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the PDF for this result to the specified directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename()
-        path = os.path.join(dirpath, filename)
-        written_path, _ = urlretrieve(self.pdf_url, path)
-        return written_path
-
-    def download_source(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the source tarfile for this result to the specified
-        directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename('tar.gz')
-        path = os.path.join(dirpath, filename)
-        # Bodge: construct the source URL from the PDF URL.
-        source_url = self.pdf_url.replace('/pdf/', '/src/')
-        written_path, _ = urlretrieve(source_url, path)
-        return written_path
-
-    def _get_pdf_url(links: list) -> str:
-        """
-        Finds the PDF link among a result's links and returns its URL.
-
-        Should only be called once for a given `Result`, in its constructor.
-        After construction, the URL should be available in `Result.pdf_url`.
-        """
-        pdf_urls = [link.href for link in links if link.title == 'pdf']
-        if len(pdf_urls) == 0:
-            return None
-        elif len(pdf_urls) > 1:
-            logger.warning(
-                "Result has multiple PDF links; using %s",
-                pdf_urls[0]
-            )
-        return pdf_urls[0]
-
-    def _to_datetime(ts: time.struct_time) -> datetime:
-        """
-        Converts a UTC time.struct_time into a time-zone-aware datetime.
-
-        This will be replaced with feedparser functionality [when it becomes
-        available](https://github.com/kurtmckee/feedparser/issues/212).
-        """
-        return datetime.fromtimestamp(timegm(ts), tz=timezone.utc)
-
-    class Author(object):
-        """
-        A light inner class for representing a result's authors.
-        """
-
-        name: str
-        """The author's name."""
-
-        def __init__(self, name: str):
-            """
-            Constructs an `Author` with the specified name.
-
-            In most cases, prefer using `Author._from_feed_author` to parsing
-            and constructing `Author`s yourself.
-            """
-            self.name = name
-
-        def _from_feed_author(
-            feed_author: feedparser.FeedParserDict
-        ) -> 'Result.Author':
-            """
-            Constructs an `Author` with the name specified in an author object
-            from a feed entry.
-
-            See usage in `Result._from_feed_entry`.
-            """
-            return Result.Author(feed_author.name)
-
-        def __str__(self) -> str:
-            return self.name
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(_classname(self), repr(self.name))
-
-        def __eq__(self, other) -> bool:
-            if isinstance(other, Result.Author):
-                return self.name == other.name
-            return False
-
-    class Link(object):
-        """
-        A light inner class for representing a result's links.
-        """
-
-        href: str
-        """The link's `href` attribute."""
-        title: str
-        """The link's title."""
-        rel: str
-        """The link's relationship to the `Result`."""
-        content_type: str
-        """The link's HTTP content type."""
-
-        def __init__(
-            self,
-            href: str,
-            title: str = None,
-            rel: str = None,
-            content_type: str = None
-        ):
-            """
-            Constructs a `Link` with the specified link metadata.
-
-            In most cases, prefer using `Link._from_feed_link` to parsing and
-            constructing `Link`s yourself.
-            """
-            self.href = href
-            self.title = title
-            self.rel = rel
-            self.content_type = content_type
-
-        def _from_feed_link(
-            feed_link: feedparser.FeedParserDict
-        ) -> 'Result.Link':
-            """
-            Constructs a `Link` with link metadata specified in a link object
-            from a feed entry.
-
-            See usage in `Result._from_feed_entry`.
-            """
-            return Result.Link(
-                href=feed_link.href,
-                title=feed_link.get('title'),
-                rel=feed_link.get('rel'),
-                content_type=feed_link.get('content_type')
-            )
-
-        def __str__(self) -> str:
-            return self.href
-
-        def __repr__(self) -> str:
-            return '{}({}, title={}, rel={}, content_type={})'.format(
-                _classname(self),
-                repr(self.href),
-                repr(self.title),
-                repr(self.rel),
-                repr(self.content_type)
-            )
-
-        def __eq__(self, other) -> bool:
-            if isinstance(other, Result.Link):
-                return self.href == other.href
-            return False
-
-    class MissingFieldError(Exception):
-        """
-        An error indicating an entry is unparseable because it lacks required
-        fields.
-        """
-
-        missing_field: str
-        """The required field missing from the would-be entry."""
-        message: str
-        """Message describing what caused this error."""
-
-        def __init__(self, missing_field):
-            self.missing_field = missing_field
-            self.message = "Entry from arXiv missing required info"
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(
-                _classname(self),
-                repr(self.missing_field)
-            )
-
-
-class SortCriterion(Enum):
-    """
-    A SortCriterion identifies a property by which search results can be
-    sorted.
-
-    See [the arXiv API User's Manual: sort order for return
-    results](https://arxiv.org/help/api/user-manual#sort).
-    """
-    Relevance = "relevance"
-    LastUpdatedDate = "lastUpdatedDate"
-    SubmittedDate = "submittedDate"
-
-
-class SortOrder(Enum):
-    """
-    A SortOrder indicates order in which search results are sorted according
-    to the specified arxiv.SortCriterion.
-
-    See [the arXiv API User's Manual: sort order for return
-    results](https://arxiv.org/help/api/user-manual#sort).
-    """
-    Ascending = "ascending"
-    Descending = "descending"
-
-
-class Search(object):
-    """
-    A specification for a search of arXiv's database.
-
-    To run a search, use `Search.run` to use a default client or `Client.run`
-    with a specific client.
-    """
-
-    query: str
-    """
-    A query string.
-
-    See [the arXiv API User's Manual: Details of Query
-    Construction](https://arxiv.org/help/api/user-manual#query_details).
-    """
-    id_list: list
-    """
-    A list of arXiv article IDs to which to limit the search.
-
-    See [the arXiv API User's
-    Manual](https://arxiv.org/help/api/user-manual#search_query_and_id_list)
-    for documentation of the interaction between `query` and `id_list`.
-    """
-    max_results: float
-    """
-    The maximum number of results to be returned in an execution of this
-    search.
-
-    To fetch every result available, set `max_results=float('inf')`.
-    """
-    sort_by: SortCriterion
-    """The sort criterion for results."""
-    sort_order: SortOrder
-    """The sort order for results."""
-
-    def __init__(
-        self,
-        query: str = "",
-        id_list: List[str] = [],
-        max_results: float = float('inf'),
-        sort_by: SortCriterion = SortCriterion.Relevance,
-        sort_order: SortOrder = SortOrder.Descending
-    ):
-        """
-        Constructs an arXiv API search with the specified criteria.
-        """
-        self.query = query
-        self.id_list = id_list
-        self.max_results = max_results
-        self.sort_by = sort_by
-        self.sort_order = sort_order
-
-    def __str__(self) -> str:
-        # TODO: develop a more informative string representation.
-        return repr(self)
-
-    def __repr__(self) -> str:
-        return (
-            '{}(query={}, id_list={}, max_results={}, sort_by={}, '
-            'sort_order={})'
-        ).format(
-            _classname(self),
-            repr(self.query),
-            repr(self.id_list),
-            repr(self.max_results),
-            repr(self.sort_by),
-            repr(self.sort_order)
-        )
-
-    def _url_args(self) -> Dict[str, str]:
-        """
-        Returns a dict of search parameters that should be included in an API
-        request for this search.
-        """
-        return {
-            "search_query": self.query,
-            "id_list": ','.join(self.id_list),
-            "sortBy": self.sort_by.value,
-            "sortOrder": self.sort_order.value
-        }
-
-    def get(self) -> Generator[Result, None, None]:
-        """
-        **Deprecated** after 1.2.0; use `Search.results`.
-        """
-        warnings.warn(
-            "The 'get' method is deprecated, use 'results' instead",
-            DeprecationWarning,
-            stacklevel=2
-        )
-        return self.results()
-
-    def results(self) -> Generator[Result, None, None]:
-        """
-        Executes the specified search using a default arXiv API client.
-
-        For info on default behavior, see `Client.__init__` and `Client.results`.
-        """
-        return Client().results(self)
-
-
-class Client(object):
-    """
-    Specifies a strategy for fetching results from arXiv's API.
-
-    This class obscures pagination and retry logic, and exposes
-    `Client.results`.
-    """
-
-    query_url_format = 'http://export.arxiv.org/api/query?{}'
-    """The arXiv query API endpoint format."""
-    page_size: int
-    """Maximum number of results fetched in a single API request."""
-    delay_seconds: int
-    """Number of seconds to wait between API requests."""
-    num_retries: int
-    """Number of times to retry a failing API request."""
-    _last_request_dt: datetime
-
-    def __init__(
-        self,
-        page_size: int = 100,
-        delay_seconds: int = 3,
-        num_retries: int = 3
-    ):
-        """
-        Constructs an arXiv API client with the specified options.
-
-        Note: the default parameters should provide a robust request strategy
-        for most use cases. Extreme page sizes, delays, or retries risk
-        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
-        brittle behavior, and inconsistent results.
-        """
-        self.page_size = page_size
-        self.delay_seconds = delay_seconds
-        self.num_retries = num_retries
-        self._last_request_dt = None
-
-    def __str__(self) -> str:
-        # TODO: develop a more informative string representation.
-        return repr(self)
-
-    def __repr__(self) -> str:
-        return '{}(page_size={}, delay_seconds={}, num_retries={})'.format(
-            _classname(self),
-            repr(self.page_size),
-            repr(self.delay_seconds),
-            repr(self.num_retries)
-        )
-
-    def get(self, search: Search) -> Generator[Result, None, None]:
-        """
-        **Deprecated** after 1.2.0; use `Client.results`.
-        """
-        warnings.warn(
-            "The 'get' method is deprecated, use 'results' instead",
-            DeprecationWarning,
-            stacklevel=2
-        )
-        return self.results(search)
-
-    def results(self, search: Search) -> Generator[Result, None, None]:
-        """
-        Uses this client configuration to fetch one page of the search results
-        at a time, yielding the parsed `Result`s, until `max_results` results
-        have been yielded or there are no more search results.
-
-        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
-
-        For more on using generators, see
-        [Generators](https://wiki.python.org/moin/Generators).
-        """
-        offset = 0
-        # total_results may be reduced according to the feed's
-        # opensearch:totalResults value.
-        total_results = search.max_results
-        first_page = True
-        while offset < total_results:
-            page_size = min(self.page_size, search.max_results - offset)
-            logger.info("Requesting {} results at offset {}".format(
-                page_size,
-                offset,
-            ))
-            page_url = self._format_url(search, offset, page_size)
-            feed = self._parse_feed(page_url, first_page)
-            if first_page:
-                # NOTE: this is an ugly fix for a known bug. The totalresults
-                # value is set to 1 for results with zero entries. If that API
-                # bug is fixed, we can remove this conditional and always set
-                # `total_results = min(...)`.
-                if len(feed.entries) == 0:
-                    logger.info("Got empty results; stopping generation")
-                    total_results = 0
-                else:
-                    total_results = min(
-                        total_results,
-                        int(feed.feed.opensearch_totalresults)
-                    )
-                    logger.info("Got first page; {} of {} results available".format(
-                        total_results,
-                        search.max_results
-                    ))
-                # Subsequent pages are not the first page.
-                first_page = False
-            # Update offset for next request: account for received results.
-            offset += len(feed.entries)
-            # Yield query results until page is exhausted.
-            for entry in feed.entries:
-                try:
-                    yield Result._from_feed_entry(entry)
-                except Result.MissingFieldError:
-                    logger.warning("Skipping partial result")
-                    continue
-
-    def _format_url(self, search: Search, start: int, page_size: int) -> str:
-        """
-        Construct a request API for search that returns up to `page_size`
-        results starting with the result at index `start`.
-        """
-        url_args = search._url_args()
-        url_args.update({
-            "start": start,
-            "max_results": page_size,
-        })
-        return self.query_url_format.format(urlencode(url_args))
-
-    def _parse_feed(
-        self,
-        url: str,
-        first_page: bool = True
-    ) -> feedparser.FeedParserDict:
-        """
-        Fetches the specified URL and parses it with feedparser.
-
-        If a request fails or is unexpectedly empty, retries the request up to
-        `self.num_retries` times.
-        """
-        # Invoke the recursive helper with initial available retries.
-        return self.__try_parse_feed(
-            url,
-            first_page=first_page,
-            retries_left=self.num_retries
-        )
-
-    def __try_parse_feed(
-        self,
-        url: str,
-        first_page: bool,
-        retries_left: int,
-        last_err: Exception = None,
-    ) -> feedparser.FeedParserDict:
-        """
-        Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that
-        number of seconds has not passed since `_parse_feed` was last called,
-        sleeps until delay_seconds seconds have passed.
-        """
-        retry = self.num_retries - retries_left
-        # If this call would violate the rate limit, sleep until it doesn't.
-        if self._last_request_dt is not None:
-            required = timedelta(seconds=self.delay_seconds)
-            since_last_request = datetime.now() - self._last_request_dt
-            if since_last_request < required:
-                to_sleep = (required - since_last_request).total_seconds()
-                logger.info("Sleeping for %f seconds", to_sleep)
-                time.sleep(to_sleep)
-        logger.info("Requesting page of results", extra={
-            'url': url,
-            'first_page': first_page,
-            'retry': retry,
-            'last_err': last_err.message if last_err is not None else None,
-        })
-        feed = feedparser.parse(url)
-        self._last_request_dt = datetime.now()
-        err = None
-        if feed.status != 200:
-            err = HTTPError(url, retry, feed)
-        elif len(feed.entries) == 0 and not first_page:
-            err = UnexpectedEmptyPageError(url, retry)
-        if err is not None:
-            if retries_left > 0:
-                return self.__try_parse_feed(
-                    url,
-                    first_page=first_page,
-                    retries_left=retries_left-1,
-                    last_err=err,
-                )
-            # Feed was never returned in self.num_retries tries. Raise the last
-            # exception encountered.
-            raise err
-        return feed
-
-
-class ArxivError(Exception):
-    """This package's base Exception class."""
-
-    url: str
-    """The feed URL that could not be fetched."""
-    retry: int
-    """
-    The request try number which encountered this error; 0 for the initial try,
-    1 for the first retry, and so on.
-    """
-    message: str
-    """Message describing what caused this error."""
-
-    def __init__(self, url: str, retry: int, message: str):
-        """
-        Constructs an `ArxivError` encountered while fetching the specified URL.
-        """
-        self.url = url
-        self.retry = retry
-        self.message = message
-        super().__init__(self.message)
-
-    def __str__(self) -> str:
-        return '{} ({})'.format(self.message, self.url)
-
-
-class UnexpectedEmptyPageError(ArxivError):
-    """
-    An error raised when a page of results that should be non-empty is empty.
-
-    This should never happen in theory, but happens sporadically due to
-    brittleness in the underlying arXiv API; usually resolved by retries.
-
-    See `Client.results` for usage.
-    """
-    def __init__(self, url: str, retry: int):
-        """
-        Constructs an `UnexpectedEmptyPageError` encountered for the specified
-        API URL after `retry` tries.
-        """
-        self.url = url
-        super().__init__(url, retry, "Page of results was unexpectedly empty")
-
-    def __repr__(self) -> str:
-        return '{}({}, {})'.format(
-            _classname(self),
-            repr(self.url),
-            repr(self.retry)
-        )
-
-
-class HTTPError(ArxivError):
-    """
-    A non-200 status encountered while fetching a page of results.
-
-    See `Client.results` for usage.
-    """
-
-    status: int
-    """The HTTP status reported by feedparser."""
-    entry: feedparser.FeedParserDict
-    """The feed entry describing the error, if present."""
-
-    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
-        """
-        Constructs an `HTTPError` for the specified status code, encountered for
-        the specified API URL after `retry` tries.
-        """
-        self.url = url
-        self.status = feed.status
-        # If the feed is valid and includes a single entry, trust it's an
-        # explanation.
-        if not feed.bozo and len(feed.entries) == 1:
-            self.entry = feed.entries[0]
-        else:
-            self.entry = None
-        super().__init__(
-            url,
-            retry,
-            "Page request resulted in HTTP {}: {}".format(
-                self.status,
-                self.entry.summary if self.entry else None,
-            ),
-        )
-
-    def __repr__(self) -> str:
-        return '{}({}, {}, {})'.format(
-            _classname(self),
-            repr(self.url),
-            repr(self.retry),
-            repr(self.status)
-        )
-
-
-def _classname(o):
-    """A helper function for use in __repr__ methods: arxiv.Result.Link."""
-    return 'arxiv.{}'.format(o.__class__.__qualname__)
-
- -
- -
-
-
- #   - - - class - Result: -
- -
- View Source -
class Result(object):
-    """
-    An entry in an arXiv query results feed.
-
-    See [the arXiv API User's Manual: Details of Atom Results
-    Returned](https://arxiv.org/help/api/user-manual#_details_of_atom_results_returned).
-    """
-
-    entry_id: str
-    """A url of the form `http://arxiv.org/abs/{id}`."""
-    updated: time.struct_time
-    """When the result was last updated."""
-    published: time.struct_time
-    """When the result was originally published."""
-    title: str
-    """The title of the result."""
-    authors: list
-    """The result's authors."""
-    summary: str
-    """The result abstrace."""
-    comment: str
-    """The authors' comment if present."""
-    journal_ref: str
-    """A journal reference if present."""
-    doi: str
-    """A URL for the resolved DOI to an external resource if present."""
-    primary_category: str
-    """
-    The result's primary arXiv category. See [arXiv: Category
-    Taxonomy](https://arxiv.org/category_taxonomy).
-    """
-    categories: List[str]
-    """
-    All of the result's categories. See [arXiv: Category
-    Taxonomy](https://arxiv.org/category_taxonomy).
-    """
-    links: list
-    """Up to three URLs associated with this result."""
-    pdf_url: str
-    """The URL of a PDF version of this result if present among links."""
-    _raw: feedparser.FeedParserDict
-    """
-    The raw feedparser result object if this Result was constructed with
-    Result._from_feed_entry.
-    """
-
-    def __init__(
-        self,
-        entry_id: str,
-        updated: datetime = _DEFAULT_TIME,
-        published: datetime = _DEFAULT_TIME,
-        title: str = "",
-        authors: List['Result.Author'] = [],
-        summary: str = "",
-        comment: str = "",
-        journal_ref: str = "",
-        doi: str = "",
-        primary_category: str = "",
-        categories: List[str] = [],
-        links: List['Result.Link'] = [],
-        _raw: feedparser.FeedParserDict = None,
-    ):
-        """
-        Constructs an arXiv search result item.
-
-        In most cases, prefer using `Result._from_feed_entry` to parsing and
-        constructing `Result`s yourself.
-        """
-        self.entry_id = entry_id
-        self.updated = updated
-        self.published = published
-        self.title = title
-        self.authors = authors
-        self.summary = summary
-        self.comment = comment
-        self.journal_ref = journal_ref
-        self.doi = doi
-        self.primary_category = primary_category
-        self.categories = categories
-        self.links = links
-        # Calculated members
-        self.pdf_url = Result._get_pdf_url(links)
-        # Debugging
-        self._raw = _raw
-
-    def _from_feed_entry(entry: feedparser.FeedParserDict) -> 'Result':
-        """
-        Converts a feedparser entry for an arXiv search result feed into a
-        Result object.
-        """
-        if not hasattr(entry, "id"):
-            raise Result.MissingFieldError("id")
-        # Title attribute may be absent for certain titles. Defaulting to "0" as
-        # it's the only title observed to cause this bug.
-        # https://github.com/lukasschwab/arxiv.py/issues/71
-        # title = entry.title if hasattr(entry, "title") else "0"
-        title = "0"
-        if hasattr(entry, "title"):
-            title = entry.title
-        else:
-            logger.warning(
-                "Result %s is missing title attribute; defaulting to '0'",
-                entry.id
-            )
-        return Result(
-            entry_id=entry.id,
-            updated=Result._to_datetime(entry.updated_parsed),
-            published=Result._to_datetime(entry.published_parsed),
-            title=re.sub(r'\s+', ' ', title),
-            authors=[Result.Author._from_feed_author(a) for a in entry.authors],
-            summary=entry.summary,
-            comment=entry.get('arxiv_comment'),
-            journal_ref=entry.get('arxiv_journal_ref'),
-            doi=entry.get('arxiv_doi'),
-            primary_category=entry.arxiv_primary_category.get('term'),
-            categories=[tag.get('term') for tag in entry.tags],
-            links=[Result.Link._from_feed_link(link) for link in entry.links],
-            _raw=entry
-        )
-
-    def __str__(self) -> str:
-        return self.entry_id
-
-    def __repr__(self) -> str:
-        return (
-            '{}(entry_id={}, updated={}, published={}, title={}, authors={}, '
-            'summary={}, comment={}, journal_ref={}, doi={}, '
-            'primary_category={}, categories={}, links={})'
-        ).format(
-            _classname(self),
-            repr(self.entry_id),
-            repr(self.updated),
-            repr(self.published),
-            repr(self.title),
-            repr(self.authors),
-            repr(self.summary),
-            repr(self.comment),
-            repr(self.journal_ref),
-            repr(self.doi),
-            repr(self.primary_category),
-            repr(self.categories),
-            repr(self.links)
-        )
-
-    def __eq__(self, other) -> bool:
-        if isinstance(other, Result):
-            return self.entry_id == other.entry_id
-        return False
-
-    def get_short_id(self) -> str:
-        """
-        Returns the short ID for this result.
-
-        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
-        `result.get_short_id()` returns `2107.05580v1`.
-
-        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
-        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
-        2007 arXiv identifier format).
-
-        For an explanation of the difference between arXiv's legacy and current
-        identifiers, see [Understanding the arXiv
-        identifier](https://arxiv.org/help/arxiv_identifier).
-        """
-        return self.entry_id.split('arxiv.org/abs/')[-1]
-
-    def _get_default_filename(self, extension: str = "pdf") -> str:
-        """
-        A default `to_filename` function for the extension given.
-        """
-        nonempty_title = self.title if self.title else "UNTITLED"
-        # Remove disallowed characters.
-        clean_title = '_'.join(re.findall(r'\w+', nonempty_title))
-        return "{}.{}.{}".format(self.get_short_id(), clean_title, extension)
-
-    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the PDF for this result to the specified directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename()
-        path = os.path.join(dirpath, filename)
-        written_path, _ = urlretrieve(self.pdf_url, path)
-        return written_path
-
-    def download_source(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the source tarfile for this result to the specified
-        directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename('tar.gz')
-        path = os.path.join(dirpath, filename)
-        # Bodge: construct the source URL from the PDF URL.
-        source_url = self.pdf_url.replace('/pdf/', '/src/')
-        written_path, _ = urlretrieve(source_url, path)
-        return written_path
-
-    def _get_pdf_url(links: list) -> str:
-        """
-        Finds the PDF link among a result's links and returns its URL.
-
-        Should only be called once for a given `Result`, in its constructor.
-        After construction, the URL should be available in `Result.pdf_url`.
-        """
-        pdf_urls = [link.href for link in links if link.title == 'pdf']
-        if len(pdf_urls) == 0:
-            return None
-        elif len(pdf_urls) > 1:
-            logger.warning(
-                "Result has multiple PDF links; using %s",
-                pdf_urls[0]
-            )
-        return pdf_urls[0]
-
-    def _to_datetime(ts: time.struct_time) -> datetime:
-        """
-        Converts a UTC time.struct_time into a time-zone-aware datetime.
-
-        This will be replaced with feedparser functionality [when it becomes
-        available](https://github.com/kurtmckee/feedparser/issues/212).
-        """
-        return datetime.fromtimestamp(timegm(ts), tz=timezone.utc)
-
-    class Author(object):
-        """
-        A light inner class for representing a result's authors.
-        """
-
-        name: str
-        """The author's name."""
-
-        def __init__(self, name: str):
-            """
-            Constructs an `Author` with the specified name.
-
-            In most cases, prefer using `Author._from_feed_author` to parsing
-            and constructing `Author`s yourself.
-            """
-            self.name = name
-
-        def _from_feed_author(
-            feed_author: feedparser.FeedParserDict
-        ) -> 'Result.Author':
-            """
-            Constructs an `Author` with the name specified in an author object
-            from a feed entry.
-
-            See usage in `Result._from_feed_entry`.
-            """
-            return Result.Author(feed_author.name)
-
-        def __str__(self) -> str:
-            return self.name
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(_classname(self), repr(self.name))
-
-        def __eq__(self, other) -> bool:
-            if isinstance(other, Result.Author):
-                return self.name == other.name
-            return False
-
-    class Link(object):
-        """
-        A light inner class for representing a result's links.
-        """
-
-        href: str
-        """The link's `href` attribute."""
-        title: str
-        """The link's title."""
-        rel: str
-        """The link's relationship to the `Result`."""
-        content_type: str
-        """The link's HTTP content type."""
-
-        def __init__(
-            self,
-            href: str,
-            title: str = None,
-            rel: str = None,
-            content_type: str = None
-        ):
-            """
-            Constructs a `Link` with the specified link metadata.
-
-            In most cases, prefer using `Link._from_feed_link` to parsing and
-            constructing `Link`s yourself.
-            """
-            self.href = href
-            self.title = title
-            self.rel = rel
-            self.content_type = content_type
-
-        def _from_feed_link(
-            feed_link: feedparser.FeedParserDict
-        ) -> 'Result.Link':
-            """
-            Constructs a `Link` with link metadata specified in a link object
-            from a feed entry.
-
-            See usage in `Result._from_feed_entry`.
-            """
-            return Result.Link(
-                href=feed_link.href,
-                title=feed_link.get('title'),
-                rel=feed_link.get('rel'),
-                content_type=feed_link.get('content_type')
-            )
-
-        def __str__(self) -> str:
-            return self.href
-
-        def __repr__(self) -> str:
-            return '{}({}, title={}, rel={}, content_type={})'.format(
-                _classname(self),
-                repr(self.href),
-                repr(self.title),
-                repr(self.rel),
-                repr(self.content_type)
-            )
-
-        def __eq__(self, other) -> bool:
-            if isinstance(other, Result.Link):
-                return self.href == other.href
-            return False
-
-    class MissingFieldError(Exception):
-        """
-        An error indicating an entry is unparseable because it lacks required
-        fields.
-        """
-
-        missing_field: str
-        """The required field missing from the would-be entry."""
-        message: str
-        """Message describing what caused this error."""
-
-        def __init__(self, missing_field):
-            self.missing_field = missing_field
-            self.message = "Entry from arXiv missing required info"
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(
-                _classname(self),
-                repr(self.missing_field)
-            )
-
- -
- -

An entry in an arXiv query results feed.

- -

See the arXiv API User's Manual: Details of Atom Results -Returned.

-
- - -
-
#   - - - Result( - entry_id: str, - updated: datetime.datetime = datetime.datetime(1, 1, 1, 0, 0), - published: datetime.datetime = datetime.datetime(1, 1, 1, 0, 0), - title: str = '', - authors: list[arxiv.arxiv.Result.Author] = [], - summary: str = '', - comment: str = '', - journal_ref: str = '', - doi: str = '', - primary_category: str = '', - categories: List[str] = [], - links: list[arxiv.arxiv.Result.Link] = [], - _raw: feedparser.util.FeedParserDict = None -) -
- -
- View Source -
    def __init__(
-        self,
-        entry_id: str,
-        updated: datetime = _DEFAULT_TIME,
-        published: datetime = _DEFAULT_TIME,
-        title: str = "",
-        authors: List['Result.Author'] = [],
-        summary: str = "",
-        comment: str = "",
-        journal_ref: str = "",
-        doi: str = "",
-        primary_category: str = "",
-        categories: List[str] = [],
-        links: List['Result.Link'] = [],
-        _raw: feedparser.FeedParserDict = None,
-    ):
-        """
-        Constructs an arXiv search result item.
-
-        In most cases, prefer using `Result._from_feed_entry` to parsing and
-        constructing `Result`s yourself.
-        """
-        self.entry_id = entry_id
-        self.updated = updated
-        self.published = published
-        self.title = title
-        self.authors = authors
-        self.summary = summary
-        self.comment = comment
-        self.journal_ref = journal_ref
-        self.doi = doi
-        self.primary_category = primary_category
-        self.categories = categories
-        self.links = links
-        # Calculated members
-        self.pdf_url = Result._get_pdf_url(links)
-        # Debugging
-        self._raw = _raw
-
- -
- -

Constructs an arXiv search result item.

- -

In most cases, prefer using Result._from_feed_entry to parsing and -constructing Results yourself.

-
- - -
-
-
#   - - entry_id: str -
- -

A url of the form http://arxiv.org/abs/{id}.

-
- - -
-
-
#   - - updated: time.struct_time -
- -

When the result was last updated.

-
- - -
-
-
#   - - published: time.struct_time -
- -

When the result was originally published.

-
- - -
-
-
#   - - title: str -
- -

The title of the result.

-
- - -
-
-
#   - - authors: list -
- -

The result's authors.

-
- - -
-
-
#   - - summary: str -
- -

The result abstrace.

-
- - -
-
-
#   - - comment: str -
- -

The authors' comment if present.

-
- - -
-
-
#   - - journal_ref: str -
- -

A journal reference if present.

-
- - -
-
-
#   - - doi: str -
- -

A URL for the resolved DOI to an external resource if present.

-
- - -
-
-
#   - - primary_category: str -
- -

The result's primary arXiv category. See arXiv: Category -Taxonomy.

-
- - -
-
-
#   - - categories: List[str] -
- -

All of the result's categories. See arXiv: Category -Taxonomy.

-
- - -
- -
-
#   - - pdf_url: str -
- -

The URL of a PDF version of this result if present among links.

-
- - -
-
-
#   - - - def - get_short_id(self) -> str: -
- -
- View Source -
    def get_short_id(self) -> str:
-        """
-        Returns the short ID for this result.
-
-        + If the result URL is `"http://arxiv.org/abs/2107.05580v1"`,
-        `result.get_short_id()` returns `2107.05580v1`.
-
-        + If the result URL is `"http://arxiv.org/abs/quant-ph/0201082v1"`,
-        `result.get_short_id()` returns `"quant-ph/0201082v1"` (the pre-March
-        2007 arXiv identifier format).
-
-        For an explanation of the difference between arXiv's legacy and current
-        identifiers, see [Understanding the arXiv
-        identifier](https://arxiv.org/help/arxiv_identifier).
-        """
-        return self.entry_id.split('arxiv.org/abs/')[-1]
-
- -
- -

Returns the short ID for this result.

- -
    -
  • If the result URL is "http://arxiv.org/abs/2107.05580v1", -result.get_short_id() returns 2107.05580v1.

  • -
  • If the result URL is "http://arxiv.org/abs/quant-ph/0201082v1", -result.get_short_id() returns "quant-ph/0201082v1" (the pre-March -2007 arXiv identifier format).

  • -
- -

For an explanation of the difference between arXiv's legacy and current -identifiers, see Understanding the arXiv -identifier.

-
- - -
-
-
#   - - - def - download_pdf(self, dirpath: str = './', filename: str = '') -> str: -
- -
- View Source -
    def download_pdf(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the PDF for this result to the specified directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename()
-        path = os.path.join(dirpath, filename)
-        written_path, _ = urlretrieve(self.pdf_url, path)
-        return written_path
-
- -
- -

Downloads the PDF for this result to the specified directory.

- -

The filename is generated by calling to_filename(self).

-
- - -
-
-
#   - - - def - download_source(self, dirpath: str = './', filename: str = '') -> str: -
- -
- View Source -
    def download_source(self, dirpath: str = './', filename: str = '') -> str:
-        """
-        Downloads the source tarfile for this result to the specified
-        directory.
-
-        The filename is generated by calling `to_filename(self)`.
-        """
-        if not filename:
-            filename = self._get_default_filename('tar.gz')
-        path = os.path.join(dirpath, filename)
-        # Bodge: construct the source URL from the PDF URL.
-        source_url = self.pdf_url.replace('/pdf/', '/src/')
-        written_path, _ = urlretrieve(source_url, path)
-        return written_path
-
- -
- -

Downloads the source tarfile for this result to the specified -directory.

- -

The filename is generated by calling to_filename(self).

-
- - -
-
-
-
- #   - - - class - Result.Author: -
- -
- View Source -
    class Author(object):
-        """
-        A light inner class for representing a result's authors.
-        """
-
-        name: str
-        """The author's name."""
-
-        def __init__(self, name: str):
-            """
-            Constructs an `Author` with the specified name.
-
-            In most cases, prefer using `Author._from_feed_author` to parsing
-            and constructing `Author`s yourself.
-            """
-            self.name = name
-
-        def _from_feed_author(
-            feed_author: feedparser.FeedParserDict
-        ) -> 'Result.Author':
-            """
-            Constructs an `Author` with the name specified in an author object
-            from a feed entry.
-
-            See usage in `Result._from_feed_entry`.
-            """
-            return Result.Author(feed_author.name)
-
-        def __str__(self) -> str:
-            return self.name
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(_classname(self), repr(self.name))
-
-        def __eq__(self, other) -> bool:
-            if isinstance(other, Result.Author):
-                return self.name == other.name
-            return False
-
- -
- -

A light inner class for representing a result's authors.

-
- - -
-
#   - - - Result.Author(name: str) -
- -
- View Source -
        def __init__(self, name: str):
-            """
-            Constructs an `Author` with the specified name.
-
-            In most cases, prefer using `Author._from_feed_author` to parsing
-            and constructing `Author`s yourself.
-            """
-            self.name = name
-
- -
- -

Constructs an Author with the specified name.

- -

In most cases, prefer using Author._from_feed_author to parsing -and constructing Authors yourself.

-
- - -
-
-
#   - - name: str -
- -

The author's name.

-
- - -
-
- -
-
- #   - - - class - Result.MissingFieldError(builtins.Exception): -
- -
- View Source -
    class MissingFieldError(Exception):
-        """
-        An error indicating an entry is unparseable because it lacks required
-        fields.
-        """
-
-        missing_field: str
-        """The required field missing from the would-be entry."""
-        message: str
-        """Message describing what caused this error."""
-
-        def __init__(self, missing_field):
-            self.missing_field = missing_field
-            self.message = "Entry from arXiv missing required info"
-
-        def __repr__(self) -> str:
-            return '{}({})'.format(
-                _classname(self),
-                repr(self.missing_field)
-            )
-
- -
- -

An error indicating an entry is unparseable because it lacks required -fields.

-
- - -
-
#   - - - Result.MissingFieldError(missing_field) -
- -
- View Source -
        def __init__(self, missing_field):
-            self.missing_field = missing_field
-            self.message = "Entry from arXiv missing required info"
-
- -
- - - -
-
-
#   - - missing_field: str -
- -

The required field missing from the would-be entry.

-
- - -
-
-
#   - - message: str -
- -

Message describing what caused this error.

-
- - -
-
-
Inherited Members
-
-
builtins.BaseException
-
with_traceback
-
args
- -
-
-
-
-
-
- #   - - - class - SortCriterion(enum.Enum): -
- -
- View Source -
class SortCriterion(Enum):
-    """
-    A SortCriterion identifies a property by which search results can be
-    sorted.
-
-    See [the arXiv API User's Manual: sort order for return
-    results](https://arxiv.org/help/api/user-manual#sort).
-    """
-    Relevance = "relevance"
-    LastUpdatedDate = "lastUpdatedDate"
-    SubmittedDate = "submittedDate"
-
- -
- -

A SortCriterion identifies a property by which search results can be -sorted.

- -

See the arXiv API User's Manual: sort order for return -results.

-
- - -
-
#   - - Relevance = <SortCriterion.Relevance: 'relevance'> -
- - - -
-
-
#   - - LastUpdatedDate = <SortCriterion.LastUpdatedDate: 'lastUpdatedDate'> -
- - - -
-
-
#   - - SubmittedDate = <SortCriterion.SubmittedDate: 'submittedDate'> -
- - - -
-
-
Inherited Members
-
-
enum.Enum
-
name
-
value
- -
-
-
-
-
-
- #   - - - class - SortOrder(enum.Enum): -
- -
- View Source -
class SortOrder(Enum):
-    """
-    A SortOrder indicates order in which search results are sorted according
-    to the specified arxiv.SortCriterion.
-
-    See [the arXiv API User's Manual: sort order for return
-    results](https://arxiv.org/help/api/user-manual#sort).
-    """
-    Ascending = "ascending"
-    Descending = "descending"
-
- -
- -

A SortOrder indicates order in which search results are sorted according -to the specified arxiv.SortCriterion.

- -

See the arXiv API User's Manual: sort order for return -results.

-
- - -
-
#   - - Ascending = <SortOrder.Ascending: 'ascending'> -
- - - -
-
-
#   - - Descending = <SortOrder.Descending: 'descending'> -
- - - -
-
-
Inherited Members
-
-
enum.Enum
-
name
-
value
- -
-
-
-
- -
-
- #   - - - class - Client: -
- -
- View Source -
class Client(object):
-    """
-    Specifies a strategy for fetching results from arXiv's API.
-
-    This class obscures pagination and retry logic, and exposes
-    `Client.results`.
-    """
-
-    query_url_format = 'http://export.arxiv.org/api/query?{}'
-    """The arXiv query API endpoint format."""
-    page_size: int
-    """Maximum number of results fetched in a single API request."""
-    delay_seconds: int
-    """Number of seconds to wait between API requests."""
-    num_retries: int
-    """Number of times to retry a failing API request."""
-    _last_request_dt: datetime
-
-    def __init__(
-        self,
-        page_size: int = 100,
-        delay_seconds: int = 3,
-        num_retries: int = 3
-    ):
-        """
-        Constructs an arXiv API client with the specified options.
-
-        Note: the default parameters should provide a robust request strategy
-        for most use cases. Extreme page sizes, delays, or retries risk
-        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
-        brittle behavior, and inconsistent results.
-        """
-        self.page_size = page_size
-        self.delay_seconds = delay_seconds
-        self.num_retries = num_retries
-        self._last_request_dt = None
-
-    def __str__(self) -> str:
-        # TODO: develop a more informative string representation.
-        return repr(self)
-
-    def __repr__(self) -> str:
-        return '{}(page_size={}, delay_seconds={}, num_retries={})'.format(
-            _classname(self),
-            repr(self.page_size),
-            repr(self.delay_seconds),
-            repr(self.num_retries)
-        )
-
-    def get(self, search: Search) -> Generator[Result, None, None]:
-        """
-        **Deprecated** after 1.2.0; use `Client.results`.
-        """
-        warnings.warn(
-            "The 'get' method is deprecated, use 'results' instead",
-            DeprecationWarning,
-            stacklevel=2
-        )
-        return self.results(search)
-
-    def results(self, search: Search) -> Generator[Result, None, None]:
-        """
-        Uses this client configuration to fetch one page of the search results
-        at a time, yielding the parsed `Result`s, until `max_results` results
-        have been yielded or there are no more search results.
-
-        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
-
-        For more on using generators, see
-        [Generators](https://wiki.python.org/moin/Generators).
-        """
-        offset = 0
-        # total_results may be reduced according to the feed's
-        # opensearch:totalResults value.
-        total_results = search.max_results
-        first_page = True
-        while offset < total_results:
-            page_size = min(self.page_size, search.max_results - offset)
-            logger.info("Requesting {} results at offset {}".format(
-                page_size,
-                offset,
-            ))
-            page_url = self._format_url(search, offset, page_size)
-            feed = self._parse_feed(page_url, first_page)
-            if first_page:
-                # NOTE: this is an ugly fix for a known bug. The totalresults
-                # value is set to 1 for results with zero entries. If that API
-                # bug is fixed, we can remove this conditional and always set
-                # `total_results = min(...)`.
-                if len(feed.entries) == 0:
-                    logger.info("Got empty results; stopping generation")
-                    total_results = 0
-                else:
-                    total_results = min(
-                        total_results,
-                        int(feed.feed.opensearch_totalresults)
-                    )
-                    logger.info("Got first page; {} of {} results available".format(
-                        total_results,
-                        search.max_results
-                    ))
-                # Subsequent pages are not the first page.
-                first_page = False
-            # Update offset for next request: account for received results.
-            offset += len(feed.entries)
-            # Yield query results until page is exhausted.
-            for entry in feed.entries:
-                try:
-                    yield Result._from_feed_entry(entry)
-                except Result.MissingFieldError:
-                    logger.warning("Skipping partial result")
-                    continue
-
-    def _format_url(self, search: Search, start: int, page_size: int) -> str:
-        """
-        Construct a request API for search that returns up to `page_size`
-        results starting with the result at index `start`.
-        """
-        url_args = search._url_args()
-        url_args.update({
-            "start": start,
-            "max_results": page_size,
-        })
-        return self.query_url_format.format(urlencode(url_args))
-
-    def _parse_feed(
-        self,
-        url: str,
-        first_page: bool = True
-    ) -> feedparser.FeedParserDict:
-        """
-        Fetches the specified URL and parses it with feedparser.
-
-        If a request fails or is unexpectedly empty, retries the request up to
-        `self.num_retries` times.
-        """
-        # Invoke the recursive helper with initial available retries.
-        return self.__try_parse_feed(
-            url,
-            first_page=first_page,
-            retries_left=self.num_retries
-        )
-
-    def __try_parse_feed(
-        self,
-        url: str,
-        first_page: bool,
-        retries_left: int,
-        last_err: Exception = None,
-    ) -> feedparser.FeedParserDict:
-        """
-        Recursive helper for _parse_feed. Enforces `self.delay_seconds`: if that
-        number of seconds has not passed since `_parse_feed` was last called,
-        sleeps until delay_seconds seconds have passed.
-        """
-        retry = self.num_retries - retries_left
-        # If this call would violate the rate limit, sleep until it doesn't.
-        if self._last_request_dt is not None:
-            required = timedelta(seconds=self.delay_seconds)
-            since_last_request = datetime.now() - self._last_request_dt
-            if since_last_request < required:
-                to_sleep = (required - since_last_request).total_seconds()
-                logger.info("Sleeping for %f seconds", to_sleep)
-                time.sleep(to_sleep)
-        logger.info("Requesting page of results", extra={
-            'url': url,
-            'first_page': first_page,
-            'retry': retry,
-            'last_err': last_err.message if last_err is not None else None,
-        })
-        feed = feedparser.parse(url)
-        self._last_request_dt = datetime.now()
-        err = None
-        if feed.status != 200:
-            err = HTTPError(url, retry, feed)
-        elif len(feed.entries) == 0 and not first_page:
-            err = UnexpectedEmptyPageError(url, retry)
-        if err is not None:
-            if retries_left > 0:
-                return self.__try_parse_feed(
-                    url,
-                    first_page=first_page,
-                    retries_left=retries_left-1,
-                    last_err=err,
-                )
-            # Feed was never returned in self.num_retries tries. Raise the last
-            # exception encountered.
-            raise err
-        return feed
-
- -
- -

Specifies a strategy for fetching results from arXiv's API.

- -

This class obscures pagination and retry logic, and exposes -Client.results.

-
- - -
-
#   - - - Client(page_size: int = 100, delay_seconds: int = 3, num_retries: int = 3) -
- -
- View Source -
    def __init__(
-        self,
-        page_size: int = 100,
-        delay_seconds: int = 3,
-        num_retries: int = 3
-    ):
-        """
-        Constructs an arXiv API client with the specified options.
-
-        Note: the default parameters should provide a robust request strategy
-        for most use cases. Extreme page sizes, delays, or retries risk
-        violating the arXiv [API Terms of Use](https://arxiv.org/help/api/tou),
-        brittle behavior, and inconsistent results.
-        """
-        self.page_size = page_size
-        self.delay_seconds = delay_seconds
-        self.num_retries = num_retries
-        self._last_request_dt = None
-
- -
- -

Constructs an arXiv API client with the specified options.

- -

Note: the default parameters should provide a robust request strategy -for most use cases. Extreme page sizes, delays, or retries risk -violating the arXiv API Terms of Use, -brittle behavior, and inconsistent results.

-
- - -
-
-
#   - - query_url_format = 'http://export.arxiv.org/api/query?{}' -
- -

The arXiv query API endpoint format.

-
- - -
-
-
#   - - page_size: int -
- -

Maximum number of results fetched in a single API request.

-
- - -
-
-
#   - - delay_seconds: int -
- -

Number of seconds to wait between API requests.

-
- - -
-
-
#   - - num_retries: int -
- -

Number of times to retry a failing API request.

-
- - -
-
-
#   - - - def - get( - self, - search: arxiv.arxiv.Search -) -> Generator[arxiv.arxiv.Result, NoneType, NoneType]: -
- -
- View Source -
    def get(self, search: Search) -> Generator[Result, None, None]:
-        """
-        **Deprecated** after 1.2.0; use `Client.results`.
-        """
-        warnings.warn(
-            "The 'get' method is deprecated, use 'results' instead",
-            DeprecationWarning,
-            stacklevel=2
-        )
-        return self.results(search)
-
- -
- -

Deprecated after 1.2.0; use Client.results.

-
- - -
-
-
#   - - - def - results( - self, - search: arxiv.arxiv.Search -) -> Generator[arxiv.arxiv.Result, NoneType, NoneType]: -
- -
- View Source -
    def results(self, search: Search) -> Generator[Result, None, None]:
-        """
-        Uses this client configuration to fetch one page of the search results
-        at a time, yielding the parsed `Result`s, until `max_results` results
-        have been yielded or there are no more search results.
-
-        If all tries fail, raises an `UnexpectedEmptyPageError` or `HTTPError`.
-
-        For more on using generators, see
-        [Generators](https://wiki.python.org/moin/Generators).
-        """
-        offset = 0
-        # total_results may be reduced according to the feed's
-        # opensearch:totalResults value.
-        total_results = search.max_results
-        first_page = True
-        while offset < total_results:
-            page_size = min(self.page_size, search.max_results - offset)
-            logger.info("Requesting {} results at offset {}".format(
-                page_size,
-                offset,
-            ))
-            page_url = self._format_url(search, offset, page_size)
-            feed = self._parse_feed(page_url, first_page)
-            if first_page:
-                # NOTE: this is an ugly fix for a known bug. The totalresults
-                # value is set to 1 for results with zero entries. If that API
-                # bug is fixed, we can remove this conditional and always set
-                # `total_results = min(...)`.
-                if len(feed.entries) == 0:
-                    logger.info("Got empty results; stopping generation")
-                    total_results = 0
-                else:
-                    total_results = min(
-                        total_results,
-                        int(feed.feed.opensearch_totalresults)
-                    )
-                    logger.info("Got first page; {} of {} results available".format(
-                        total_results,
-                        search.max_results
-                    ))
-                # Subsequent pages are not the first page.
-                first_page = False
-            # Update offset for next request: account for received results.
-            offset += len(feed.entries)
-            # Yield query results until page is exhausted.
-            for entry in feed.entries:
-                try:
-                    yield Result._from_feed_entry(entry)
-                except Result.MissingFieldError:
-                    logger.warning("Skipping partial result")
-                    continue
-
- -
- -

Uses this client configuration to fetch one page of the search results -at a time, yielding the parsed Results, until max_results results -have been yielded or there are no more search results.

- -

If all tries fail, raises an UnexpectedEmptyPageError or HTTPError.

- -

For more on using generators, see -Generators.

-
- - -
-
-
-
- #   - - - class - ArxivError(builtins.Exception): -
- -
- View Source -
class ArxivError(Exception):
-    """This package's base Exception class."""
-
-    url: str
-    """The feed URL that could not be fetched."""
-    retry: int
-    """
-    The request try number which encountered this error; 0 for the initial try,
-    1 for the first retry, and so on.
-    """
-    message: str
-    """Message describing what caused this error."""
-
-    def __init__(self, url: str, retry: int, message: str):
-        """
-        Constructs an `ArxivError` encountered while fetching the specified URL.
-        """
-        self.url = url
-        self.retry = retry
-        self.message = message
-        super().__init__(self.message)
-
-    def __str__(self) -> str:
-        return '{} ({})'.format(self.message, self.url)
-
- -
- -

This package's base Exception class.

-
- - -
-
#   - - - ArxivError(url: str, retry: int, message: str) -
- -
- View Source -
    def __init__(self, url: str, retry: int, message: str):
-        """
-        Constructs an `ArxivError` encountered while fetching the specified URL.
-        """
-        self.url = url
-        self.retry = retry
-        self.message = message
-        super().__init__(self.message)
-
- -
- -

Constructs an ArxivError encountered while fetching the specified URL.

-
- - -
-
-
#   - - url: str -
- -

The feed URL that could not be fetched.

-
- - -
-
-
#   - - retry: int -
- -

The request try number which encountered this error; 0 for the initial try, -1 for the first retry, and so on.

-
- - -
-
-
#   - - message: str -
- -

Message describing what caused this error.

-
- - -
-
-
Inherited Members
-
-
builtins.BaseException
-
with_traceback
-
args
- -
-
-
-
-
-
- #   - - - class - UnexpectedEmptyPageError(ArxivError): -
- -
- View Source -
class UnexpectedEmptyPageError(ArxivError):
-    """
-    An error raised when a page of results that should be non-empty is empty.
-
-    This should never happen in theory, but happens sporadically due to
-    brittleness in the underlying arXiv API; usually resolved by retries.
-
-    See `Client.results` for usage.
-    """
-    def __init__(self, url: str, retry: int):
-        """
-        Constructs an `UnexpectedEmptyPageError` encountered for the specified
-        API URL after `retry` tries.
-        """
-        self.url = url
-        super().__init__(url, retry, "Page of results was unexpectedly empty")
-
-    def __repr__(self) -> str:
-        return '{}({}, {})'.format(
-            _classname(self),
-            repr(self.url),
-            repr(self.retry)
-        )
-
- -
- -

An error raised when a page of results that should be non-empty is empty.

- -

This should never happen in theory, but happens sporadically due to -brittleness in the underlying arXiv API; usually resolved by retries.

- -

See Client.results for usage.

-
- - -
-
#   - - - UnexpectedEmptyPageError(url: str, retry: int) -
- -
- View Source -
    def __init__(self, url: str, retry: int):
-        """
-        Constructs an `UnexpectedEmptyPageError` encountered for the specified
-        API URL after `retry` tries.
-        """
-        self.url = url
-        super().__init__(url, retry, "Page of results was unexpectedly empty")
-
- -
- -

Constructs an UnexpectedEmptyPageError encountered for the specified -API URL after retry tries.

-
- - -
-
-
Inherited Members
-
-
ArxivError
-
url
-
retry
-
message
- -
-
builtins.BaseException
-
with_traceback
-
args
- -
-
-
-
-
-
- #   - - - class - HTTPError(ArxivError): -
- -
- View Source -
class HTTPError(ArxivError):
-    """
-    A non-200 status encountered while fetching a page of results.
-
-    See `Client.results` for usage.
-    """
-
-    status: int
-    """The HTTP status reported by feedparser."""
-    entry: feedparser.FeedParserDict
-    """The feed entry describing the error, if present."""
-
-    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
-        """
-        Constructs an `HTTPError` for the specified status code, encountered for
-        the specified API URL after `retry` tries.
-        """
-        self.url = url
-        self.status = feed.status
-        # If the feed is valid and includes a single entry, trust it's an
-        # explanation.
-        if not feed.bozo and len(feed.entries) == 1:
-            self.entry = feed.entries[0]
-        else:
-            self.entry = None
-        super().__init__(
-            url,
-            retry,
-            "Page request resulted in HTTP {}: {}".format(
-                self.status,
-                self.entry.summary if self.entry else None,
-            ),
-        )
-
-    def __repr__(self) -> str:
-        return '{}({}, {}, {})'.format(
-            _classname(self),
-            repr(self.url),
-            repr(self.retry),
-            repr(self.status)
-        )
-
- -
- -

A non-200 status encountered while fetching a page of results.

- -

See Client.results for usage.

-
- - -
-
#   - - - HTTPError(url: str, retry: int, feed: feedparser.util.FeedParserDict) -
- -
- View Source -
    def __init__(self, url: str, retry: int, feed: feedparser.FeedParserDict):
-        """
-        Constructs an `HTTPError` for the specified status code, encountered for
-        the specified API URL after `retry` tries.
-        """
-        self.url = url
-        self.status = feed.status
-        # If the feed is valid and includes a single entry, trust it's an
-        # explanation.
-        if not feed.bozo and len(feed.entries) == 1:
-            self.entry = feed.entries[0]
-        else:
-            self.entry = None
-        super().__init__(
-            url,
-            retry,
-            "Page request resulted in HTTP {}: {}".format(
-                self.status,
-                self.entry.summary if self.entry else None,
-            ),
-        )
-
- -
- -

Constructs an HTTPError for the specified status code, encountered for -the specified API URL after retry tries.

-
- - -
-
-
#   - - status: int -
- -

The HTTP status reported by feedparser.

-
- - -
-
-
#   - - entry: feedparser.util.FeedParserDict -
- -

The feed entry describing the error, if present.

-
- - -
-
-
Inherited Members
-
-
ArxivError
-
url
-
retry
-
message
- -
-
builtins.BaseException
-
with_traceback
-
args
- -
-
-
-
+ + \ No newline at end of file diff --git a/docs/search.json b/docs/search.json new file mode 100644 index 0000000..240b435 --- /dev/null +++ b/docs/search.json @@ -0,0 +1 @@ +{"version": "0.9.5", "fields": ["qualname", "fullname", "doc"], "ref": "fullname", "documentStore": {"docs": {"arxiv": {"fullname": "arxiv", "modulename": "arxiv", "qualname": "", "type": "module", "doc": "

arxiv.py \"Python \"PyPI\" \"GitHub

\n\n

Python wrapper for the arXiv API.

\n\n

Quick links

\n\n\n\n

About arXiv

\n\n

arXiv is a project by the Cornell University Library that provides open access to 1,000,000+ articles in Physics, Mathematics, Computer Science, Quantitative Biology, Quantitative Finance, and Statistics.

\n\n

Usage

\n\n

Installation

\n\n
$ pip install arxiv\n
\n\n

In your Python script, include the line

\n\n
import arxiv\n
\n\n

Search

\n\n

A Search specifies a search of arXiv's database.

\n\n
arxiv.Search(\n  query: str = "",\n  id_list: List[str] = [],\n  max_results: float = float('inf'),\n  sort_by: SortCriterion = SortCriterion.Relevanvce,\n  sort_order: SortOrder = SortOrder.Descending\n)\n
\n\n\n\n

To fetch arXiv records matching a Search, use search.results() or (Client).results(search) to get a generator yielding Results.

\n\n

Example: fetching results

\n\n

Print the titles fo the 10 most recent articles related to the keyword \"quantum:\"

\n\n
import arxiv\n\nsearch = arxiv.Search(\n  query = "quantum",\n  max_results = 10,\n  sort_by = arxiv.SortCriterion.SubmittedDate\n)\n\nfor result in search.results():\n  print(result.title)\n
\n\n

Fetch and print the title of the paper with ID \"1605.08386v1:\"

\n\n
import arxiv\n\nsearch = arxiv.Search(id_list=["1605.08386v1"])\npaper = next(search.results())\nprint(paper.title)\n
\n\n

Result

\n\n\n\n

The Result objects yielded by (Search).results() include metadata about each paper and some helper functions for downloading their content.

\n\n

The meaning of the underlying raw data is documented in the arXiv API User Manual: Details of Atom Results Returned.

\n\n\n\n

They also expose helper methods for downloading papers: (Result).download_pdf() and (Result).download_source().

\n\n

Example: downloading papers

\n\n

To download a PDF of the paper with ID \"1605.08386v1,\" run a Search and then use (Result).download_pdf():

\n\n
import arxiv\n\npaper = next(arxiv.Search(id_list=["1605.08386v1"]).results())\n# Download the PDF to the PWD with a default filename.\npaper.download_pdf()\n# Download the PDF to the PWD with a custom filename.\npaper.download_pdf(filename="downloaded-paper.pdf")\n# Download the PDF to a specified directory with a custom filename.\npaper.download_pdf(dirpath="./mydir", filename="downloaded-paper.pdf")\n
\n\n

The same interface is available for downloading .tar.gz files of the paper source:

\n\n
import arxiv\n\npaper = next(arxiv.Search(id_list=["1605.08386v1"]).results())\n# Download the archive to the PWD with a default filename.\npaper.download_source()\n# Download the archive to the PWD with a custom filename.\npaper.download_source(filename="downloaded-paper.tar.gz")\n# Download the archive to a specified directory with a custom filename.\npaper.download_source(dirpath="./mydir", filename="downloaded-paper.tar.gz")\n
\n\n

Client

\n\n

A Client specifies a strategy for fetching results from arXiv's API; it obscures pagination and retry logic.

\n\n

For most use cases the default client should suffice. You can construct it explicitly with arxiv.Client(), or use it via the (Search).results() method.

\n\n
arxiv.Client(\n  page_size: int = 100,\n  delay_seconds: int = 3,\n  num_retries: int = 3\n)\n
\n\n\n\n

Example: fetching results with a custom client

\n\n

(Search).results() uses the default client settings. If you want to use a client you've defined instead of the defaults, use (Client).results(...):

\n\n
import arxiv\n\nbig_slow_client = arxiv.Client(\n  page_size = 1000,\n  delay_seconds = 10,\n  num_retries = 5\n)\n\n# Prints 1000 titles before needing to make another request.\nfor result in big_slow_client.results(arxiv.Search(query="quantum")):\n  print(result.title)\n
\n\n

Example: logging

\n\n

To inspect this package's network behavior and API logic, configure an INFO-level logger.

\n\n
>>> import logging, arxiv\n>>> logging.basicConfig(level=logging.INFO)\n>>> paper = next(arxiv.Search(id_list=["1605.08386v1"]).results())\nINFO:arxiv.arxiv:Requesting 100 results at offset 0\nINFO:arxiv.arxiv:Requesting page of results\nINFO:arxiv.arxiv:Got first page; 1 of inf results available\n
\n"}, "arxiv.api": {"fullname": "arxiv.api", "modulename": "arxiv.api", "qualname": "", "type": "module", "doc": "

\n"}, "arxiv.api.Result": {"fullname": "arxiv.api.Result", "modulename": "arxiv.api", "qualname": "Result", "type": "class", "doc": "

An entry in an arXiv query results feed.

\n\n

See the arXiv API User's Manual: Details of Atom Results\nReturned.

\n"}, "arxiv.api.Result.__init__": {"fullname": "arxiv.api.Result.__init__", "modulename": "arxiv.api", "qualname": "Result.__init__", "type": "function", "doc": "

Constructs an arXiv search result item.

\n\n

In most cases, prefer using Result._from_feed_entry to parsing and\nconstructing Results yourself.

\n", "parameters": ["self", "entry_id", "updated", "published", "title", "authors", "summary", "comment", "journal_ref", "doi", "primary_category", "categories", "links", "_raw"], "funcdef": "def"}, "arxiv.api.Result.entry_id": {"fullname": "arxiv.api.Result.entry_id", "modulename": "arxiv.api", "qualname": "Result.entry_id", "type": "variable", "doc": "

A url of the form http://arxiv.org/abs/{id}.

\n"}, "arxiv.api.Result.updated": {"fullname": "arxiv.api.Result.updated", "modulename": "arxiv.api", "qualname": "Result.updated", "type": "variable", "doc": "

When the result was last updated.

\n"}, "arxiv.api.Result.published": {"fullname": "arxiv.api.Result.published", "modulename": "arxiv.api", "qualname": "Result.published", "type": "variable", "doc": "

When the result was originally published.

\n"}, "arxiv.api.Result.title": {"fullname": "arxiv.api.Result.title", "modulename": "arxiv.api", "qualname": "Result.title", "type": "variable", "doc": "

The title of the result.

\n"}, "arxiv.api.Result.authors": {"fullname": "arxiv.api.Result.authors", "modulename": "arxiv.api", "qualname": "Result.authors", "type": "variable", "doc": "

The result's authors.

\n"}, "arxiv.api.Result.summary": {"fullname": "arxiv.api.Result.summary", "modulename": "arxiv.api", "qualname": "Result.summary", "type": "variable", "doc": "

The result abstrace.

\n"}, "arxiv.api.Result.comment": {"fullname": "arxiv.api.Result.comment", "modulename": "arxiv.api", "qualname": "Result.comment", "type": "variable", "doc": "

The authors' comment if present.

\n"}, "arxiv.api.Result.journal_ref": {"fullname": "arxiv.api.Result.journal_ref", "modulename": "arxiv.api", "qualname": "Result.journal_ref", "type": "variable", "doc": "

A journal reference if present.

\n"}, "arxiv.api.Result.doi": {"fullname": "arxiv.api.Result.doi", "modulename": "arxiv.api", "qualname": "Result.doi", "type": "variable", "doc": "

A URL for the resolved DOI to an external resource if present.

\n"}, "arxiv.api.Result.primary_category": {"fullname": "arxiv.api.Result.primary_category", "modulename": "arxiv.api", "qualname": "Result.primary_category", "type": "variable", "doc": "

The result's primary arXiv category. See arXiv: Category\nTaxonomy.

\n"}, "arxiv.api.Result.categories": {"fullname": "arxiv.api.Result.categories", "modulename": "arxiv.api", "qualname": "Result.categories", "type": "variable", "doc": "

All of the result's categories. See arXiv: Category\nTaxonomy.

\n"}, "arxiv.api.Result.links": {"fullname": "arxiv.api.Result.links", "modulename": "arxiv.api", "qualname": "Result.links", "type": "variable", "doc": "

Up to three URLs associated with this result.

\n"}, "arxiv.api.Result.pdf_url": {"fullname": "arxiv.api.Result.pdf_url", "modulename": "arxiv.api", "qualname": "Result.pdf_url", "type": "variable", "doc": "

The URL of a PDF version of this result if present among links.

\n"}, "arxiv.api.Result.get_short_id": {"fullname": "arxiv.api.Result.get_short_id", "modulename": "arxiv.api", "qualname": "Result.get_short_id", "type": "function", "doc": "

Returns the short ID for this result.

\n\n\n\n

For an explanation of the difference between arXiv's legacy and current\nidentifiers, see Understanding the arXiv\nidentifier.

\n", "parameters": ["self"], "funcdef": "def"}, "arxiv.api.Result.download_pdf": {"fullname": "arxiv.api.Result.download_pdf", "modulename": "arxiv.api", "qualname": "Result.download_pdf", "type": "function", "doc": "

Downloads the PDF for this result to the specified directory.

\n\n

The filename is generated by calling to_filename(self).

\n", "parameters": ["self", "dirpath", "filename"], "funcdef": "def"}, "arxiv.api.Result.download_source": {"fullname": "arxiv.api.Result.download_source", "modulename": "arxiv.api", "qualname": "Result.download_source", "type": "function", "doc": "

Downloads the source tarfile for this result to the specified\ndirectory.

\n\n

The filename is generated by calling to_filename(self).

\n", "parameters": ["self", "dirpath", "filename"], "funcdef": "def"}, "arxiv.api.Result.Author": {"fullname": "arxiv.api.Result.Author", "modulename": "arxiv.api", "qualname": "Result.Author", "type": "class", "doc": "

A light inner class for representing a result's authors.

\n"}, "arxiv.api.Result.Author.__init__": {"fullname": "arxiv.api.Result.Author.__init__", "modulename": "arxiv.api", "qualname": "Result.Author.__init__", "type": "function", "doc": "

Constructs an Author with the specified name.

\n\n

In most cases, prefer using Author._from_feed_author to parsing\nand constructing Authors yourself.

\n", "parameters": ["self", "name"], "funcdef": "def"}, "arxiv.api.Result.Author.name": {"fullname": "arxiv.api.Result.Author.name", "modulename": "arxiv.api", "qualname": "Result.Author.name", "type": "variable", "doc": "

The author's name.

\n"}, "arxiv.api.Result.Link": {"fullname": "arxiv.api.Result.Link", "modulename": "arxiv.api", "qualname": "Result.Link", "type": "class", "doc": "

A light inner class for representing a result's links.

\n"}, "arxiv.api.Result.Link.__init__": {"fullname": "arxiv.api.Result.Link.__init__", "modulename": "arxiv.api", "qualname": "Result.Link.__init__", "type": "function", "doc": "

Constructs a Link with the specified link metadata.

\n\n

In most cases, prefer using Link._from_feed_link to parsing and\nconstructing Links yourself.

\n", "parameters": ["self", "href", "title", "rel", "content_type"], "funcdef": "def"}, "arxiv.api.Result.Link.href": {"fullname": "arxiv.api.Result.Link.href", "modulename": "arxiv.api", "qualname": "Result.Link.href", "type": "variable", "doc": "

The link's href attribute.

\n"}, "arxiv.api.Result.Link.title": {"fullname": "arxiv.api.Result.Link.title", "modulename": "arxiv.api", "qualname": "Result.Link.title", "type": "variable", "doc": "

The link's title.

\n"}, "arxiv.api.Result.Link.rel": {"fullname": "arxiv.api.Result.Link.rel", "modulename": "arxiv.api", "qualname": "Result.Link.rel", "type": "variable", "doc": "

The link's relationship to the Result.

\n"}, "arxiv.api.Result.Link.content_type": {"fullname": "arxiv.api.Result.Link.content_type", "modulename": "arxiv.api", "qualname": "Result.Link.content_type", "type": "variable", "doc": "

The link's HTTP content type.

\n"}, "arxiv.api.Result.MissingFieldError": {"fullname": "arxiv.api.Result.MissingFieldError", "modulename": "arxiv.api", "qualname": "Result.MissingFieldError", "type": "class", "doc": "

An error indicating an entry is unparseable because it lacks required\nfields.

\n"}, "arxiv.api.Result.MissingFieldError.__init__": {"fullname": "arxiv.api.Result.MissingFieldError.__init__", "modulename": "arxiv.api", "qualname": "Result.MissingFieldError.__init__", "type": "function", "doc": "

\n", "parameters": ["self", "missing_field"], "funcdef": "def"}, "arxiv.api.Result.MissingFieldError.missing_field": {"fullname": "arxiv.api.Result.MissingFieldError.missing_field", "modulename": "arxiv.api", "qualname": "Result.MissingFieldError.missing_field", "type": "variable", "doc": "

The required field missing from the would-be entry.

\n"}, "arxiv.api.Result.MissingFieldError.message": {"fullname": "arxiv.api.Result.MissingFieldError.message", "modulename": "arxiv.api", "qualname": "Result.MissingFieldError.message", "type": "variable", "doc": "

Message describing what caused this error.

\n"}, "arxiv.api.SortCriterion": {"fullname": "arxiv.api.SortCriterion", "modulename": "arxiv.api", "qualname": "SortCriterion", "type": "class", "doc": "

A SortCriterion identifies a property by which search results can be\nsorted.

\n\n

See the arXiv API User's Manual: sort order for return\nresults.

\n"}, "arxiv.api.SortCriterion.Relevance": {"fullname": "arxiv.api.SortCriterion.Relevance", "modulename": "arxiv.api", "qualname": "SortCriterion.Relevance", "type": "variable", "doc": "

\n"}, "arxiv.api.SortCriterion.LastUpdatedDate": {"fullname": "arxiv.api.SortCriterion.LastUpdatedDate", "modulename": "arxiv.api", "qualname": "SortCriterion.LastUpdatedDate", "type": "variable", "doc": "

\n"}, "arxiv.api.SortCriterion.SubmittedDate": {"fullname": "arxiv.api.SortCriterion.SubmittedDate", "modulename": "arxiv.api", "qualname": "SortCriterion.SubmittedDate", "type": "variable", "doc": "

\n"}, "arxiv.api.SortOrder": {"fullname": "arxiv.api.SortOrder", "modulename": "arxiv.api", "qualname": "SortOrder", "type": "class", "doc": "

A SortOrder indicates order in which search results are sorted according\nto the specified arxiv.SortCriterion.

\n\n

See the arXiv API User's Manual: sort order for return\nresults.

\n"}, "arxiv.api.SortOrder.Ascending": {"fullname": "arxiv.api.SortOrder.Ascending", "modulename": "arxiv.api", "qualname": "SortOrder.Ascending", "type": "variable", "doc": "

\n"}, "arxiv.api.SortOrder.Descending": {"fullname": "arxiv.api.SortOrder.Descending", "modulename": "arxiv.api", "qualname": "SortOrder.Descending", "type": "variable", "doc": "

\n"}, "arxiv.api.Search": {"fullname": "arxiv.api.Search", "modulename": "arxiv.api", "qualname": "Search", "type": "class", "doc": "

A specification for a search of arXiv's database.

\n\n

To run a search, use Search.run to use a default client or Client.run\nwith a specific client.

\n"}, "arxiv.api.Search.__init__": {"fullname": "arxiv.api.Search.__init__", "modulename": "arxiv.api", "qualname": "Search.__init__", "type": "function", "doc": "

Constructs an arXiv API search with the specified criteria.

\n", "parameters": ["self", "query", "id_list", "max_results", "sort_by", "sort_order"], "funcdef": "def"}, "arxiv.api.Search.query": {"fullname": "arxiv.api.Search.query", "modulename": "arxiv.api", "qualname": "Search.query", "type": "variable", "doc": "

A query string.

\n\n

See the arXiv API User's Manual: Details of Query\nConstruction.

\n"}, "arxiv.api.Search.id_list": {"fullname": "arxiv.api.Search.id_list", "modulename": "arxiv.api", "qualname": "Search.id_list", "type": "variable", "doc": "

A list of arXiv article IDs to which to limit the search.

\n\n

See the arXiv API User's\nManual\nfor documentation of the interaction between query and id_list.

\n"}, "arxiv.api.Search.max_results": {"fullname": "arxiv.api.Search.max_results", "modulename": "arxiv.api", "qualname": "Search.max_results", "type": "variable", "doc": "

The maximum number of results to be returned in an execution of this\nsearch.

\n\n

To fetch every result available, set max_results=float('inf').

\n"}, "arxiv.api.Search.sort_by": {"fullname": "arxiv.api.Search.sort_by", "modulename": "arxiv.api", "qualname": "Search.sort_by", "type": "variable", "doc": "

The sort criterion for results.

\n"}, "arxiv.api.Search.sort_order": {"fullname": "arxiv.api.Search.sort_order", "modulename": "arxiv.api", "qualname": "Search.sort_order", "type": "variable", "doc": "

The sort order for results.

\n"}, "arxiv.api.Search.get": {"fullname": "arxiv.api.Search.get", "modulename": "arxiv.api", "qualname": "Search.get", "type": "function", "doc": "

Deprecated after 1.2.0; use Search.results.

\n", "parameters": ["self"], "funcdef": "def"}, "arxiv.api.Search.results": {"fullname": "arxiv.api.Search.results", "modulename": "arxiv.api", "qualname": "Search.results", "type": "function", "doc": "

Executes the specified search using a default arXiv API client.

\n\n

For info on default behavior, see Client.__init__ and Client.results.

\n", "parameters": ["self"], "funcdef": "def"}, "arxiv.api.Client": {"fullname": "arxiv.api.Client", "modulename": "arxiv.api", "qualname": "Client", "type": "class", "doc": "

Specifies a strategy for fetching results from arXiv's API.

\n\n

This class obscures pagination and retry logic, and exposes\nClient.results.

\n"}, "arxiv.api.Client.__init__": {"fullname": "arxiv.api.Client.__init__", "modulename": "arxiv.api", "qualname": "Client.__init__", "type": "function", "doc": "

Constructs an arXiv API client with the specified options.

\n\n

Note: the default parameters should provide a robust request strategy\nfor most use cases. Extreme page sizes, delays, or retries risk\nviolating the arXiv API Terms of Use,\nbrittle behavior, and inconsistent results.

\n", "parameters": ["self", "page_size", "delay_seconds", "num_retries"], "funcdef": "def"}, "arxiv.api.Client.query_url_format": {"fullname": "arxiv.api.Client.query_url_format", "modulename": "arxiv.api", "qualname": "Client.query_url_format", "type": "variable", "doc": "

The arXiv query API endpoint format.

\n"}, "arxiv.api.Client.page_size": {"fullname": "arxiv.api.Client.page_size", "modulename": "arxiv.api", "qualname": "Client.page_size", "type": "variable", "doc": "

Maximum number of results fetched in a single API request.

\n"}, "arxiv.api.Client.delay_seconds": {"fullname": "arxiv.api.Client.delay_seconds", "modulename": "arxiv.api", "qualname": "Client.delay_seconds", "type": "variable", "doc": "

Number of seconds to wait between API requests.

\n"}, "arxiv.api.Client.num_retries": {"fullname": "arxiv.api.Client.num_retries", "modulename": "arxiv.api", "qualname": "Client.num_retries", "type": "variable", "doc": "

Number of times to retry a failing API request.

\n"}, "arxiv.api.Client.get": {"fullname": "arxiv.api.Client.get", "modulename": "arxiv.api", "qualname": "Client.get", "type": "function", "doc": "

Deprecated after 1.2.0; use Client.results.

\n", "parameters": ["self", "search"], "funcdef": "def"}, "arxiv.api.Client.results": {"fullname": "arxiv.api.Client.results", "modulename": "arxiv.api", "qualname": "Client.results", "type": "function", "doc": "

Uses this client configuration to fetch one page of the search results\nat a time, yielding the parsed Results, until max_results results\nhave been yielded or there are no more search results.

\n\n

If all tries fail, raises an UnexpectedEmptyPageError or HTTPError.

\n\n

For more on using generators, see\nGenerators.

\n", "parameters": ["self", "search"], "funcdef": "def"}, "arxiv.api.ArxivError": {"fullname": "arxiv.api.ArxivError", "modulename": "arxiv.api", "qualname": "ArxivError", "type": "class", "doc": "

This package's base Exception class.

\n"}, "arxiv.api.ArxivError.__init__": {"fullname": "arxiv.api.ArxivError.__init__", "modulename": "arxiv.api", "qualname": "ArxivError.__init__", "type": "function", "doc": "

Constructs an ArxivError encountered while fetching the specified URL.

\n", "parameters": ["self", "url", "retry", "message"], "funcdef": "def"}, "arxiv.api.ArxivError.url": {"fullname": "arxiv.api.ArxivError.url", "modulename": "arxiv.api", "qualname": "ArxivError.url", "type": "variable", "doc": "

The feed URL that could not be fetched.

\n"}, "arxiv.api.ArxivError.retry": {"fullname": "arxiv.api.ArxivError.retry", "modulename": "arxiv.api", "qualname": "ArxivError.retry", "type": "variable", "doc": "

The request try number which encountered this error; 0 for the initial try,\n1 for the first retry, and so on.

\n"}, "arxiv.api.ArxivError.message": {"fullname": "arxiv.api.ArxivError.message", "modulename": "arxiv.api", "qualname": "ArxivError.message", "type": "variable", "doc": "

Message describing what caused this error.

\n"}, "arxiv.api.UnexpectedEmptyPageError": {"fullname": "arxiv.api.UnexpectedEmptyPageError", "modulename": "arxiv.api", "qualname": "UnexpectedEmptyPageError", "type": "class", "doc": "

An error raised when a page of results that should be non-empty is empty.

\n\n

This should never happen in theory, but happens sporadically due to\nbrittleness in the underlying arXiv API; usually resolved by retries.

\n\n

See Client.results for usage.

\n"}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"fullname": "arxiv.api.UnexpectedEmptyPageError.__init__", "modulename": "arxiv.api", "qualname": "UnexpectedEmptyPageError.__init__", "type": "function", "doc": "

Constructs an UnexpectedEmptyPageError encountered for the specified\nAPI URL after retry tries.

\n", "parameters": ["self", "url", "retry"], "funcdef": "def"}, "arxiv.api.HTTPError": {"fullname": "arxiv.api.HTTPError", "modulename": "arxiv.api", "qualname": "HTTPError", "type": "class", "doc": "

A non-200 status encountered while fetching a page of results.

\n\n

See Client.results for usage.

\n"}, "arxiv.api.HTTPError.__init__": {"fullname": "arxiv.api.HTTPError.__init__", "modulename": "arxiv.api", "qualname": "HTTPError.__init__", "type": "function", "doc": "

Constructs an HTTPError for the specified status code, encountered for\nthe specified API URL after retry tries.

\n", "parameters": ["self", "url", "retry", "feed"], "funcdef": "def"}, "arxiv.api.HTTPError.status": {"fullname": "arxiv.api.HTTPError.status", "modulename": "arxiv.api", "qualname": "HTTPError.status", "type": "variable", "doc": "

The HTTP status reported by feedparser.

\n"}, "arxiv.api.HTTPError.entry": {"fullname": "arxiv.api.HTTPError.entry", "modulename": "arxiv.api", "qualname": "HTTPError.entry", "type": "variable", "doc": "

The feed entry describing the error, if present.

\n"}, "arxiv.arxiv": {"fullname": "arxiv.arxiv", "modulename": "arxiv.arxiv", "qualname": "", "type": "module", "doc": "

\n"}, "arxiv.category": {"fullname": "arxiv.category", "modulename": "arxiv.category", "qualname": "", "type": "module", "doc": "

\n"}, "arxiv.category.ComputerScience": {"fullname": "arxiv.category.ComputerScience", "modulename": "arxiv.category", "qualname": "ComputerScience", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"fullname": "arxiv.category.ComputerScience.ArtificialIntelligence", "modulename": "arxiv.category", "qualname": "ComputerScience.ArtificialIntelligence", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.HardwareArchitecture": {"fullname": "arxiv.category.ComputerScience.HardwareArchitecture", "modulename": "arxiv.category", "qualname": "ComputerScience.HardwareArchitecture", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputationalComplexity": {"fullname": "arxiv.category.ComputerScience.ComputationalComplexity", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputationalComplexity", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"fullname": "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputationalEngineeringFinanceAndScience", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputationalGeometry": {"fullname": "arxiv.category.ComputerScience.ComputationalGeometry", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputationalGeometry", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"fullname": "arxiv.category.ComputerScience.ComputationAndLanguage", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputationAndLanguage", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"fullname": "arxiv.category.ComputerScience.CryptographyAndSecurity", "modulename": "arxiv.category", "qualname": "ComputerScience.CryptographyAndSecurity", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"fullname": "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputerVisionAndPatternRecognition", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputersAndSociety": {"fullname": "arxiv.category.ComputerScience.ComputersAndSociety", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputersAndSociety", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Databases": {"fullname": "arxiv.category.ComputerScience.Databases", "modulename": "arxiv.category", "qualname": "ComputerScience.Databases", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"fullname": "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing", "modulename": "arxiv.category", "qualname": "ComputerScience.DistributedParallelAndClusterComputing", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.DigitalLibraries": {"fullname": "arxiv.category.ComputerScience.DigitalLibraries", "modulename": "arxiv.category", "qualname": "ComputerScience.DigitalLibraries", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.DiscreteMathematics": {"fullname": "arxiv.category.ComputerScience.DiscreteMathematics", "modulename": "arxiv.category", "qualname": "ComputerScience.DiscreteMathematics", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"fullname": "arxiv.category.ComputerScience.DataStructuresAndAlgorithms", "modulename": "arxiv.category", "qualname": "ComputerScience.DataStructuresAndAlgorithms", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.EmergingTechnologies": {"fullname": "arxiv.category.ComputerScience.EmergingTechnologies", "modulename": "arxiv.category", "qualname": "ComputerScience.EmergingTechnologies", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"fullname": "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory", "modulename": "arxiv.category", "qualname": "ComputerScience.FormalLanguagesAndAutomataTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.GeneralLiterature": {"fullname": "arxiv.category.ComputerScience.GeneralLiterature", "modulename": "arxiv.category", "qualname": "ComputerScience.GeneralLiterature", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Graphics": {"fullname": "arxiv.category.ComputerScience.Graphics", "modulename": "arxiv.category", "qualname": "ComputerScience.Graphics", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"fullname": "arxiv.category.ComputerScience.ComputerScienceAndGameTheory", "modulename": "arxiv.category", "qualname": "ComputerScience.ComputerScienceAndGameTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"fullname": "arxiv.category.ComputerScience.HumanComputerInteraction", "modulename": "arxiv.category", "qualname": "ComputerScience.HumanComputerInteraction", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.InformationRetrieval": {"fullname": "arxiv.category.ComputerScience.InformationRetrieval", "modulename": "arxiv.category", "qualname": "ComputerScience.InformationRetrieval", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.MathInformationTheory": {"fullname": "arxiv.category.ComputerScience.MathInformationTheory", "modulename": "arxiv.category", "qualname": "ComputerScience.MathInformationTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.MachineLearning": {"fullname": "arxiv.category.ComputerScience.MachineLearning", "modulename": "arxiv.category", "qualname": "ComputerScience.MachineLearning", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.LogicinComputerScience": {"fullname": "arxiv.category.ComputerScience.LogicinComputerScience", "modulename": "arxiv.category", "qualname": "ComputerScience.LogicinComputerScience", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.MultiagentSystems": {"fullname": "arxiv.category.ComputerScience.MultiagentSystems", "modulename": "arxiv.category", "qualname": "ComputerScience.MultiagentSystems", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Multimedia": {"fullname": "arxiv.category.ComputerScience.Multimedia", "modulename": "arxiv.category", "qualname": "ComputerScience.Multimedia", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.MathematicalSoftware": {"fullname": "arxiv.category.ComputerScience.MathematicalSoftware", "modulename": "arxiv.category", "qualname": "ComputerScience.MathematicalSoftware", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.NumericalAnalysis": {"fullname": "arxiv.category.ComputerScience.NumericalAnalysis", "modulename": "arxiv.category", "qualname": "ComputerScience.NumericalAnalysis", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"fullname": "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing", "modulename": "arxiv.category", "qualname": "ComputerScience.NeuralAndEvolutionaryComputing", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"fullname": "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture", "modulename": "arxiv.category", "qualname": "ComputerScience.NetworkingAndInternetArchitecture", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.OtherComputerScience": {"fullname": "arxiv.category.ComputerScience.OtherComputerScience", "modulename": "arxiv.category", "qualname": "ComputerScience.OtherComputerScience", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.OperatingSystems": {"fullname": "arxiv.category.ComputerScience.OperatingSystems", "modulename": "arxiv.category", "qualname": "ComputerScience.OperatingSystems", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Performance": {"fullname": "arxiv.category.ComputerScience.Performance", "modulename": "arxiv.category", "qualname": "ComputerScience.Performance", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"fullname": "arxiv.category.ComputerScience.ProgrammingLanguages", "modulename": "arxiv.category", "qualname": "ComputerScience.ProgrammingLanguages", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Robotics": {"fullname": "arxiv.category.ComputerScience.Robotics", "modulename": "arxiv.category", "qualname": "ComputerScience.Robotics", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.SymbolicComputation": {"fullname": "arxiv.category.ComputerScience.SymbolicComputation", "modulename": "arxiv.category", "qualname": "ComputerScience.SymbolicComputation", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.Sound": {"fullname": "arxiv.category.ComputerScience.Sound", "modulename": "arxiv.category", "qualname": "ComputerScience.Sound", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.SoftwareEngineering": {"fullname": "arxiv.category.ComputerScience.SoftwareEngineering", "modulename": "arxiv.category", "qualname": "ComputerScience.SoftwareEngineering", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"fullname": "arxiv.category.ComputerScience.SocialAndInformationNetworks", "modulename": "arxiv.category", "qualname": "ComputerScience.SocialAndInformationNetworks", "type": "variable", "doc": "

\n"}, "arxiv.category.ComputerScience.SystemsAndControl": {"fullname": "arxiv.category.ComputerScience.SystemsAndControl", "modulename": "arxiv.category", "qualname": "ComputerScience.SystemsAndControl", "type": "variable", "doc": "

\n"}, "arxiv.category.Economics": {"fullname": "arxiv.category.Economics", "modulename": "arxiv.category", "qualname": "Economics", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.Economics.Econometrics": {"fullname": "arxiv.category.Economics.Econometrics", "modulename": "arxiv.category", "qualname": "Economics.Econometrics", "type": "variable", "doc": "

\n"}, "arxiv.category.Economics.GeneralEconomics": {"fullname": "arxiv.category.Economics.GeneralEconomics", "modulename": "arxiv.category", "qualname": "Economics.GeneralEconomics", "type": "variable", "doc": "

\n"}, "arxiv.category.Economics.TheoreticalEconomics": {"fullname": "arxiv.category.Economics.TheoreticalEconomics", "modulename": "arxiv.category", "qualname": "Economics.TheoreticalEconomics", "type": "variable", "doc": "

\n"}, "arxiv.category.ElectricalEngineeringAndSystemsScience": {"fullname": "arxiv.category.ElectricalEngineeringAndSystemsScience", "modulename": "arxiv.category", "qualname": "ElectricalEngineeringAndSystemsScience", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"fullname": "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing", "modulename": "arxiv.category", "qualname": "ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing", "type": "variable", "doc": "

\n"}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"fullname": "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing", "modulename": "arxiv.category", "qualname": "ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing", "type": "variable", "doc": "

\n"}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"fullname": "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing", "modulename": "arxiv.category", "qualname": "ElectricalEngineeringAndSystemsScience.SignalProcessing", "type": "variable", "doc": "

\n"}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"fullname": "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl", "modulename": "arxiv.category", "qualname": "ElectricalEngineeringAndSystemsScience.SystemsAndControl", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics": {"fullname": "arxiv.category.Mathematics", "modulename": "arxiv.category", "qualname": "Mathematics", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.Mathematics.CommutativeAlgebra": {"fullname": "arxiv.category.Mathematics.CommutativeAlgebra", "modulename": "arxiv.category", "qualname": "Mathematics.CommutativeAlgebra", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.AlgebraicGeometry": {"fullname": "arxiv.category.Mathematics.AlgebraicGeometry", "modulename": "arxiv.category", "qualname": "Mathematics.AlgebraicGeometry", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.AnalysisofPDEs": {"fullname": "arxiv.category.Mathematics.AnalysisofPDEs", "modulename": "arxiv.category", "qualname": "Mathematics.AnalysisofPDEs", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.AlgebraicTopology": {"fullname": "arxiv.category.Mathematics.AlgebraicTopology", "modulename": "arxiv.category", "qualname": "Mathematics.AlgebraicTopology", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"fullname": "arxiv.category.Mathematics.ClassicalAnalysisandODEs", "modulename": "arxiv.category", "qualname": "Mathematics.ClassicalAnalysisandODEs", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.Combinatorics": {"fullname": "arxiv.category.Mathematics.Combinatorics", "modulename": "arxiv.category", "qualname": "Mathematics.Combinatorics", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.CategoryTheory": {"fullname": "arxiv.category.Mathematics.CategoryTheory", "modulename": "arxiv.category", "qualname": "Mathematics.CategoryTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.ComplexVariables": {"fullname": "arxiv.category.Mathematics.ComplexVariables", "modulename": "arxiv.category", "qualname": "Mathematics.ComplexVariables", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.DifferentialGeometry": {"fullname": "arxiv.category.Mathematics.DifferentialGeometry", "modulename": "arxiv.category", "qualname": "Mathematics.DifferentialGeometry", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.DynamicalSystems": {"fullname": "arxiv.category.Mathematics.DynamicalSystems", "modulename": "arxiv.category", "qualname": "Mathematics.DynamicalSystems", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.FunctionalAnalysis": {"fullname": "arxiv.category.Mathematics.FunctionalAnalysis", "modulename": "arxiv.category", "qualname": "Mathematics.FunctionalAnalysis", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.GeneralMathematics": {"fullname": "arxiv.category.Mathematics.GeneralMathematics", "modulename": "arxiv.category", "qualname": "Mathematics.GeneralMathematics", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.GeneralTopology": {"fullname": "arxiv.category.Mathematics.GeneralTopology", "modulename": "arxiv.category", "qualname": "Mathematics.GeneralTopology", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.GroupTheory": {"fullname": "arxiv.category.Mathematics.GroupTheory", "modulename": "arxiv.category", "qualname": "Mathematics.GroupTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.GeometricTopology": {"fullname": "arxiv.category.Mathematics.GeometricTopology", "modulename": "arxiv.category", "qualname": "Mathematics.GeometricTopology", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.HistoryandOverview": {"fullname": "arxiv.category.Mathematics.HistoryandOverview", "modulename": "arxiv.category", "qualname": "Mathematics.HistoryandOverview", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.MathInformationTheory": {"fullname": "arxiv.category.Mathematics.MathInformationTheory", "modulename": "arxiv.category", "qualname": "Mathematics.MathInformationTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.KTheoryandHomology": {"fullname": "arxiv.category.Mathematics.KTheoryandHomology", "modulename": "arxiv.category", "qualname": "Mathematics.KTheoryandHomology", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.Logic": {"fullname": "arxiv.category.Mathematics.Logic", "modulename": "arxiv.category", "qualname": "Mathematics.Logic", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.MetricGeometry": {"fullname": "arxiv.category.Mathematics.MetricGeometry", "modulename": "arxiv.category", "qualname": "Mathematics.MetricGeometry", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.MathematicalPhysics": {"fullname": "arxiv.category.Mathematics.MathematicalPhysics", "modulename": "arxiv.category", "qualname": "Mathematics.MathematicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.NumericalAnalysis": {"fullname": "arxiv.category.Mathematics.NumericalAnalysis", "modulename": "arxiv.category", "qualname": "Mathematics.NumericalAnalysis", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.NumberTheory": {"fullname": "arxiv.category.Mathematics.NumberTheory", "modulename": "arxiv.category", "qualname": "Mathematics.NumberTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.OperatorAlgebras": {"fullname": "arxiv.category.Mathematics.OperatorAlgebras", "modulename": "arxiv.category", "qualname": "Mathematics.OperatorAlgebras", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.OptimizationandControl": {"fullname": "arxiv.category.Mathematics.OptimizationandControl", "modulename": "arxiv.category", "qualname": "Mathematics.OptimizationandControl", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.Probability": {"fullname": "arxiv.category.Mathematics.Probability", "modulename": "arxiv.category", "qualname": "Mathematics.Probability", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.QuantumAlgebra": {"fullname": "arxiv.category.Mathematics.QuantumAlgebra", "modulename": "arxiv.category", "qualname": "Mathematics.QuantumAlgebra", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.RingsandAlgebras": {"fullname": "arxiv.category.Mathematics.RingsandAlgebras", "modulename": "arxiv.category", "qualname": "Mathematics.RingsandAlgebras", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.RepresentationTheory": {"fullname": "arxiv.category.Mathematics.RepresentationTheory", "modulename": "arxiv.category", "qualname": "Mathematics.RepresentationTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.SymplecticGeometry": {"fullname": "arxiv.category.Mathematics.SymplecticGeometry", "modulename": "arxiv.category", "qualname": "Mathematics.SymplecticGeometry", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.SpectralTheory": {"fullname": "arxiv.category.Mathematics.SpectralTheory", "modulename": "arxiv.category", "qualname": "Mathematics.SpectralTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Mathematics.StatisticsTheory": {"fullname": "arxiv.category.Mathematics.StatisticsTheory", "modulename": "arxiv.category", "qualname": "Mathematics.StatisticsTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics": {"fullname": "arxiv.category.Physics", "modulename": "arxiv.category", "qualname": "Physics", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"fullname": "arxiv.category.Physics.CosmologyandNongalacticAstrophysics", "modulename": "arxiv.category", "qualname": "Physics.CosmologyandNongalacticAstrophysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"fullname": "arxiv.category.Physics.EarthandPlanetaryAstrophysics", "modulename": "arxiv.category", "qualname": "Physics.EarthandPlanetaryAstrophysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"fullname": "arxiv.category.Physics.AstrophysicsofGalaxies", "modulename": "arxiv.category", "qualname": "Physics.AstrophysicsofGalaxies", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"fullname": "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena", "modulename": "arxiv.category", "qualname": "Physics.HighEnergyAstrophysicalPhenomena", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"fullname": "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics", "modulename": "arxiv.category", "qualname": "Physics.InstrumentationandMethodsforAstrophysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"fullname": "arxiv.category.Physics.SolarandStellarAstrophysics", "modulename": "arxiv.category", "qualname": "Physics.SolarandStellarAstrophysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"fullname": "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks", "modulename": "arxiv.category", "qualname": "Physics.DisorderedSystemsandNeuralNetworks", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"fullname": "arxiv.category.Physics.MesoscaleandNanoscalePhysics", "modulename": "arxiv.category", "qualname": "Physics.MesoscaleandNanoscalePhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.MaterialsScience": {"fullname": "arxiv.category.Physics.MaterialsScience", "modulename": "arxiv.category", "qualname": "Physics.MaterialsScience", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.OtherCondensedMatter": {"fullname": "arxiv.category.Physics.OtherCondensedMatter", "modulename": "arxiv.category", "qualname": "Physics.OtherCondensedMatter", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.QuantumGases": {"fullname": "arxiv.category.Physics.QuantumGases", "modulename": "arxiv.category", "qualname": "Physics.QuantumGases", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.SoftCondensedMatter": {"fullname": "arxiv.category.Physics.SoftCondensedMatter", "modulename": "arxiv.category", "qualname": "Physics.SoftCondensedMatter", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.StatisticalMechanics": {"fullname": "arxiv.category.Physics.StatisticalMechanics", "modulename": "arxiv.category", "qualname": "Physics.StatisticalMechanics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"fullname": "arxiv.category.Physics.StronglyCorrelatedElectrons", "modulename": "arxiv.category", "qualname": "Physics.StronglyCorrelatedElectrons", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.Superconductivity": {"fullname": "arxiv.category.Physics.Superconductivity", "modulename": "arxiv.category", "qualname": "Physics.Superconductivity", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"fullname": "arxiv.category.Physics.GeneralRelativityandQuantumCosmology", "modulename": "arxiv.category", "qualname": "Physics.GeneralRelativityandQuantumCosmology", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"fullname": "arxiv.category.Physics.HighEnergyPhysicsExperiment", "modulename": "arxiv.category", "qualname": "Physics.HighEnergyPhysicsExperiment", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"fullname": "arxiv.category.Physics.HighEnergyPhysicsLattice", "modulename": "arxiv.category", "qualname": "Physics.HighEnergyPhysicsLattice", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"fullname": "arxiv.category.Physics.HighEnergyPhysicsPhenomenology", "modulename": "arxiv.category", "qualname": "Physics.HighEnergyPhysicsPhenomenology", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"fullname": "arxiv.category.Physics.HighEnergyPhysicsTheory", "modulename": "arxiv.category", "qualname": "Physics.HighEnergyPhysicsTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.MathematicalPhysics": {"fullname": "arxiv.category.Physics.MathematicalPhysics", "modulename": "arxiv.category", "qualname": "Physics.MathematicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"fullname": "arxiv.category.Physics.AdaptationandSelfOrganizingSystems", "modulename": "arxiv.category", "qualname": "Physics.AdaptationandSelfOrganizingSystems", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.ChaoticDynamics": {"fullname": "arxiv.category.Physics.ChaoticDynamics", "modulename": "arxiv.category", "qualname": "Physics.ChaoticDynamics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"fullname": "arxiv.category.Physics.CellularAutomataandLatticeGases", "modulename": "arxiv.category", "qualname": "Physics.CellularAutomataandLatticeGases", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.PatternFormationandSolitons": {"fullname": "arxiv.category.Physics.PatternFormationandSolitons", "modulename": "arxiv.category", "qualname": "Physics.PatternFormationandSolitons", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"fullname": "arxiv.category.Physics.ExactlySolvableandIntegrableSystems", "modulename": "arxiv.category", "qualname": "Physics.ExactlySolvableandIntegrableSystems", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.NuclearExperiment": {"fullname": "arxiv.category.Physics.NuclearExperiment", "modulename": "arxiv.category", "qualname": "Physics.NuclearExperiment", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.NuclearTheory": {"fullname": "arxiv.category.Physics.NuclearTheory", "modulename": "arxiv.category", "qualname": "Physics.NuclearTheory", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AcceleratorPhysics": {"fullname": "arxiv.category.Physics.AcceleratorPhysics", "modulename": "arxiv.category", "qualname": "Physics.AcceleratorPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"fullname": "arxiv.category.Physics.AtmosphericandOceanicPhysics", "modulename": "arxiv.category", "qualname": "Physics.AtmosphericandOceanicPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AppliedPhysics": {"fullname": "arxiv.category.Physics.AppliedPhysics", "modulename": "arxiv.category", "qualname": "Physics.AppliedPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AtomicandMolecularClusters": {"fullname": "arxiv.category.Physics.AtomicandMolecularClusters", "modulename": "arxiv.category", "qualname": "Physics.AtomicandMolecularClusters", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.AtomicPhysics": {"fullname": "arxiv.category.Physics.AtomicPhysics", "modulename": "arxiv.category", "qualname": "Physics.AtomicPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.BiologicalPhysics": {"fullname": "arxiv.category.Physics.BiologicalPhysics", "modulename": "arxiv.category", "qualname": "Physics.BiologicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.ChemicalPhysics": {"fullname": "arxiv.category.Physics.ChemicalPhysics", "modulename": "arxiv.category", "qualname": "Physics.ChemicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.ClassicalPhysics": {"fullname": "arxiv.category.Physics.ClassicalPhysics", "modulename": "arxiv.category", "qualname": "Physics.ClassicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.ComputationalPhysics": {"fullname": "arxiv.category.Physics.ComputationalPhysics", "modulename": "arxiv.category", "qualname": "Physics.ComputationalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"fullname": "arxiv.category.Physics.DataAnalysisStatisticsandProbability", "modulename": "arxiv.category", "qualname": "Physics.DataAnalysisStatisticsandProbability", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.PhysicsEducation": {"fullname": "arxiv.category.Physics.PhysicsEducation", "modulename": "arxiv.category", "qualname": "Physics.PhysicsEducation", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.FluidDynamics": {"fullname": "arxiv.category.Physics.FluidDynamics", "modulename": "arxiv.category", "qualname": "Physics.FluidDynamics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.GeneralPhysics": {"fullname": "arxiv.category.Physics.GeneralPhysics", "modulename": "arxiv.category", "qualname": "Physics.GeneralPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.Geophysics": {"fullname": "arxiv.category.Physics.Geophysics", "modulename": "arxiv.category", "qualname": "Physics.Geophysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"fullname": "arxiv.category.Physics.HistoryandPhilosophyofPhysics", "modulename": "arxiv.category", "qualname": "Physics.HistoryandPhilosophyofPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.InstrumentationandDetectors": {"fullname": "arxiv.category.Physics.InstrumentationandDetectors", "modulename": "arxiv.category", "qualname": "Physics.InstrumentationandDetectors", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.MedicalPhysics": {"fullname": "arxiv.category.Physics.MedicalPhysics", "modulename": "arxiv.category", "qualname": "Physics.MedicalPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.Optics": {"fullname": "arxiv.category.Physics.Optics", "modulename": "arxiv.category", "qualname": "Physics.Optics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.PlasmaPhysics": {"fullname": "arxiv.category.Physics.PlasmaPhysics", "modulename": "arxiv.category", "qualname": "Physics.PlasmaPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.PopularPhysics": {"fullname": "arxiv.category.Physics.PopularPhysics", "modulename": "arxiv.category", "qualname": "Physics.PopularPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.PhysicsandSociety": {"fullname": "arxiv.category.Physics.PhysicsandSociety", "modulename": "arxiv.category", "qualname": "Physics.PhysicsandSociety", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.SpacePhysics": {"fullname": "arxiv.category.Physics.SpacePhysics", "modulename": "arxiv.category", "qualname": "Physics.SpacePhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.Physics.QuantumPhysics": {"fullname": "arxiv.category.Physics.QuantumPhysics", "modulename": "arxiv.category", "qualname": "Physics.QuantumPhysics", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology": {"fullname": "arxiv.category.QuantitativeBiology", "modulename": "arxiv.category", "qualname": "QuantitativeBiology", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.QuantitativeBiology.Biomolecules": {"fullname": "arxiv.category.QuantitativeBiology.Biomolecules", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.Biomolecules", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.CellBehavior": {"fullname": "arxiv.category.QuantitativeBiology.CellBehavior", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.CellBehavior", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.Genomics": {"fullname": "arxiv.category.QuantitativeBiology.Genomics", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.Genomics", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"fullname": "arxiv.category.QuantitativeBiology.MolecularNetworks", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.MolecularNetworks", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"fullname": "arxiv.category.QuantitativeBiology.NeuronsandCognition", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.NeuronsandCognition", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"fullname": "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.OtherQuantitativeBiology", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"fullname": "arxiv.category.QuantitativeBiology.PopulationsandEvolution", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.PopulationsandEvolution", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"fullname": "arxiv.category.QuantitativeBiology.QuantitativeMethods", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.QuantitativeMethods", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"fullname": "arxiv.category.QuantitativeBiology.SubcellularProcesses", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.SubcellularProcesses", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"fullname": "arxiv.category.QuantitativeBiology.TissuesandOrgans", "modulename": "arxiv.category", "qualname": "QuantitativeBiology.TissuesandOrgans", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance": {"fullname": "arxiv.category.QuantitativeFinance", "modulename": "arxiv.category", "qualname": "QuantitativeFinance", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"fullname": "arxiv.category.QuantitativeFinance.ComputationalFinance", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.ComputationalFinance", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.Economics": {"fullname": "arxiv.category.QuantitativeFinance.Economics", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.Economics", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"fullname": "arxiv.category.QuantitativeFinance.GeneralFinance", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.GeneralFinance", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"fullname": "arxiv.category.QuantitativeFinance.MathematicalFinance", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.MathematicalFinance", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"fullname": "arxiv.category.QuantitativeFinance.PortfolioManagement", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.PortfolioManagement", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"fullname": "arxiv.category.QuantitativeFinance.PricingofSecurities", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.PricingofSecurities", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.RiskManagement": {"fullname": "arxiv.category.QuantitativeFinance.RiskManagement", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.RiskManagement", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"fullname": "arxiv.category.QuantitativeFinance.StatisticalFinance", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.StatisticalFinance", "type": "variable", "doc": "

\n"}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"fullname": "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure", "modulename": "arxiv.category", "qualname": "QuantitativeFinance.TradingandMarketMicrostructure", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics": {"fullname": "arxiv.category.Statistics", "modulename": "arxiv.category", "qualname": "Statistics", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.category.Statistics.Applications": {"fullname": "arxiv.category.Statistics.Applications", "modulename": "arxiv.category", "qualname": "Statistics.Applications", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics.Computation": {"fullname": "arxiv.category.Statistics.Computation", "modulename": "arxiv.category", "qualname": "Statistics.Computation", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics.Methodology": {"fullname": "arxiv.category.Statistics.Methodology", "modulename": "arxiv.category", "qualname": "Statistics.Methodology", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics.MachineLearning": {"fullname": "arxiv.category.Statistics.MachineLearning", "modulename": "arxiv.category", "qualname": "Statistics.MachineLearning", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics.OtherStatistics": {"fullname": "arxiv.category.Statistics.OtherStatistics", "modulename": "arxiv.category", "qualname": "Statistics.OtherStatistics", "type": "variable", "doc": "

\n"}, "arxiv.category.Statistics.StatisticsTheory": {"fullname": "arxiv.category.Statistics.StatisticsTheory", "modulename": "arxiv.category", "qualname": "Statistics.StatisticsTheory", "type": "variable", "doc": "

\n"}, "arxiv.query": {"fullname": "arxiv.query", "modulename": "arxiv.query", "qualname": "", "type": "module", "doc": "

\n"}, "arxiv.query.Query": {"fullname": "arxiv.query.Query", "modulename": "arxiv.query", "qualname": "Query", "type": "class", "doc": "

\n"}, "arxiv.query.Query.__init__": {"fullname": "arxiv.query.Query.__init__", "modulename": "arxiv.query", "qualname": "Query.__init__", "type": "function", "doc": "

\n", "parameters": ["self", "query_string"], "funcdef": "def"}, "arxiv.query.Query.attribute": {"fullname": "arxiv.query.Query.attribute", "modulename": "arxiv.query", "qualname": "Query.attribute", "type": "function", "doc": "

\n", "parameters": ["attribute", "value"], "funcdef": "def"}, "arxiv.query.Query.AND": {"fullname": "arxiv.query.Query.AND", "modulename": "arxiv.query", "qualname": "Query.AND", "type": "function", "doc": "

\n", "parameters": ["self", "other"], "funcdef": "def"}, "arxiv.query.Query.OR": {"fullname": "arxiv.query.Query.OR", "modulename": "arxiv.query", "qualname": "Query.OR", "type": "function", "doc": "

\n", "parameters": ["self", "other"], "funcdef": "def"}, "arxiv.query.Query.ANDNOT": {"fullname": "arxiv.query.Query.ANDNOT", "modulename": "arxiv.query", "qualname": "Query.ANDNOT", "type": "function", "doc": "

\n", "parameters": ["self", "other"], "funcdef": "def"}, "arxiv.query.Query.Operator": {"fullname": "arxiv.query.Query.Operator", "modulename": "arxiv.query", "qualname": "Query.Operator", "type": "class", "doc": "

An enumeration.

\n"}, "arxiv.query.Query.Operator.And": {"fullname": "arxiv.query.Query.Operator.And", "modulename": "arxiv.query", "qualname": "Query.Operator.And", "type": "variable", "doc": "

\n"}, "arxiv.query.Query.Operator.Or": {"fullname": "arxiv.query.Query.Operator.Or", "modulename": "arxiv.query", "qualname": "Query.Operator.Or", "type": "variable", "doc": "

\n"}, "arxiv.query.Query.Operator.AndNot": {"fullname": "arxiv.query.Query.Operator.AndNot", "modulename": "arxiv.query", "qualname": "Query.Operator.AndNot", "type": "variable", "doc": "

\n"}, "arxiv.query.Query.to_string": {"fullname": "arxiv.query.Query.to_string", "modulename": "arxiv.query", "qualname": "Query.to_string", "type": "function", "doc": "

\n", "parameters": ["self"], "funcdef": "def"}, "arxiv.query.Attribute": {"fullname": "arxiv.query.Attribute", "modulename": "arxiv.query", "qualname": "Attribute", "type": "class", "doc": "

See https://arxiv.org/help/api/user-manual#query_details.

\n"}, "arxiv.query.Attribute.Title": {"fullname": "arxiv.query.Attribute.Title", "modulename": "arxiv.query", "qualname": "Attribute.Title", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.Author": {"fullname": "arxiv.query.Attribute.Author", "modulename": "arxiv.query", "qualname": "Attribute.Author", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.Abstract": {"fullname": "arxiv.query.Attribute.Abstract", "modulename": "arxiv.query", "qualname": "Attribute.Abstract", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.Comment": {"fullname": "arxiv.query.Attribute.Comment", "modulename": "arxiv.query", "qualname": "Attribute.Comment", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.JournalReference": {"fullname": "arxiv.query.Attribute.JournalReference", "modulename": "arxiv.query", "qualname": "Attribute.JournalReference", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.Category": {"fullname": "arxiv.query.Attribute.Category", "modulename": "arxiv.query", "qualname": "Attribute.Category", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.ReportNumber": {"fullname": "arxiv.query.Attribute.ReportNumber", "modulename": "arxiv.query", "qualname": "Attribute.ReportNumber", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.ID": {"fullname": "arxiv.query.Attribute.ID", "modulename": "arxiv.query", "qualname": "Attribute.ID", "type": "variable", "doc": "

\n"}, "arxiv.query.Attribute.All": {"fullname": "arxiv.query.Attribute.All", "modulename": "arxiv.query", "qualname": "Attribute.All", "type": "variable", "doc": "

\n"}}, "docInfo": {"arxiv": {"qualname": 0, "fullname": 1, "doc": 671}, "arxiv.api": {"qualname": 0, "fullname": 2, "doc": 0}, "arxiv.api.Result": {"qualname": 1, "fullname": 3, "doc": 14}, "arxiv.api.Result.__init__": {"qualname": 2, "fullname": 4, "doc": 15}, "arxiv.api.Result.entry_id": {"qualname": 2, "fullname": 4, "doc": 4}, "arxiv.api.Result.updated": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Result.published": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Result.title": {"qualname": 2, "fullname": 4, "doc": 2}, "arxiv.api.Result.authors": {"qualname": 2, "fullname": 4, "doc": 2}, "arxiv.api.Result.summary": {"qualname": 2, "fullname": 4, "doc": 2}, "arxiv.api.Result.comment": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Result.journal_ref": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Result.doi": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Result.primary_category": {"qualname": 2, "fullname": 4, "doc": 8}, "arxiv.api.Result.categories": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Result.links": {"qualname": 2, "fullname": 4, "doc": 5}, "arxiv.api.Result.pdf_url": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Result.get_short_id": {"qualname": 2, "fullname": 4, "doc": 41}, "arxiv.api.Result.download_pdf": {"qualname": 2, "fullname": 4, "doc": 9}, "arxiv.api.Result.download_source": {"qualname": 2, "fullname": 4, "doc": 10}, "arxiv.api.Result.Author": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Result.Author.__init__": {"qualname": 3, "fullname": 5, "doc": 14}, "arxiv.api.Result.Author.name": {"qualname": 3, "fullname": 5, "doc": 2}, "arxiv.api.Result.Link": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Result.Link.__init__": {"qualname": 3, "fullname": 5, "doc": 15}, "arxiv.api.Result.Link.href": {"qualname": 3, "fullname": 5, "doc": 3}, "arxiv.api.Result.Link.title": {"qualname": 3, "fullname": 5, "doc": 2}, "arxiv.api.Result.Link.rel": {"qualname": 3, "fullname": 5, "doc": 3}, "arxiv.api.Result.Link.content_type": {"qualname": 3, "fullname": 5, "doc": 4}, "arxiv.api.Result.MissingFieldError": {"qualname": 2, "fullname": 4, "doc": 7}, "arxiv.api.Result.MissingFieldError.__init__": {"qualname": 3, "fullname": 5, "doc": 0}, "arxiv.api.Result.MissingFieldError.missing_field": {"qualname": 3, "fullname": 5, "doc": 4}, "arxiv.api.Result.MissingFieldError.message": {"qualname": 3, "fullname": 5, "doc": 4}, "arxiv.api.SortCriterion": {"qualname": 1, "fullname": 3, "doc": 15}, "arxiv.api.SortCriterion.Relevance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.api.SortCriterion.LastUpdatedDate": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.api.SortCriterion.SubmittedDate": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.api.SortOrder": {"qualname": 1, "fullname": 3, "doc": 19}, "arxiv.api.SortOrder.Ascending": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.api.SortOrder.Descending": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.api.Search": {"qualname": 1, "fullname": 3, "doc": 16}, "arxiv.api.Search.__init__": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Search.query": {"qualname": 2, "fullname": 4, "doc": 10}, "arxiv.api.Search.id_list": {"qualname": 2, "fullname": 4, "doc": 16}, "arxiv.api.Search.max_results": {"qualname": 2, "fullname": 4, "doc": 11}, "arxiv.api.Search.sort_by": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Search.sort_order": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.Search.get": {"qualname": 1, "fullname": 3, "doc": 7}, "arxiv.api.Search.results": {"qualname": 2, "fullname": 4, "doc": 16}, "arxiv.api.Client": {"qualname": 1, "fullname": 3, "doc": 14}, "arxiv.api.Client.__init__": {"qualname": 2, "fullname": 4, "doc": 30}, "arxiv.api.Client.query_url_format": {"qualname": 2, "fullname": 4, "doc": 5}, "arxiv.api.Client.page_size": {"qualname": 2, "fullname": 4, "doc": 7}, "arxiv.api.Client.delay_seconds": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Client.num_retries": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.Client.get": {"qualname": 1, "fullname": 3, "doc": 7}, "arxiv.api.Client.results": {"qualname": 2, "fullname": 4, "doc": 30}, "arxiv.api.ArxivError": {"qualname": 1, "fullname": 3, "doc": 4}, "arxiv.api.ArxivError.__init__": {"qualname": 2, "fullname": 4, "doc": 6}, "arxiv.api.ArxivError.url": {"qualname": 2, "fullname": 4, "doc": 3}, "arxiv.api.ArxivError.retry": {"qualname": 2, "fullname": 4, "doc": 11}, "arxiv.api.ArxivError.message": {"qualname": 2, "fullname": 4, "doc": 4}, "arxiv.api.UnexpectedEmptyPageError": {"qualname": 1, "fullname": 3, "doc": 24}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"qualname": 2, "fullname": 4, "doc": 8}, "arxiv.api.HTTPError": {"qualname": 1, "fullname": 3, "doc": 11}, "arxiv.api.HTTPError.__init__": {"qualname": 2, "fullname": 4, "doc": 11}, "arxiv.api.HTTPError.status": {"qualname": 2, "fullname": 4, "doc": 4}, "arxiv.api.HTTPError.entry": {"qualname": 2, "fullname": 4, "doc": 5}, "arxiv.arxiv": {"qualname": 0, "fullname": 2, "doc": 0}, "arxiv.category": {"qualname": 0, "fullname": 2, "doc": 0}, "arxiv.category.ComputerScience": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.HardwareArchitecture": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputationalComplexity": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputationalGeometry": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputersAndSociety": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Databases": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.DigitalLibraries": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.DiscreteMathematics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.EmergingTechnologies": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.GeneralLiterature": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Graphics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.InformationRetrieval": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.MathInformationTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.MachineLearning": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.LogicinComputerScience": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.MultiagentSystems": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Multimedia": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.MathematicalSoftware": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.NumericalAnalysis": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.OtherComputerScience": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.OperatingSystems": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Performance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Robotics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.SymbolicComputation": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.Sound": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.SoftwareEngineering": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ComputerScience.SystemsAndControl": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Economics": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.Economics.Econometrics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Economics.GeneralEconomics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Economics.TheoreticalEconomics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ElectricalEngineeringAndSystemsScience": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.Mathematics.CommutativeAlgebra": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.AlgebraicGeometry": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.AnalysisofPDEs": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.AlgebraicTopology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.Combinatorics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.CategoryTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.ComplexVariables": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.DifferentialGeometry": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.DynamicalSystems": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.FunctionalAnalysis": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.GeneralMathematics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.GeneralTopology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.GroupTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.GeometricTopology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.HistoryandOverview": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.MathInformationTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.KTheoryandHomology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.Logic": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.MetricGeometry": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.MathematicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.NumericalAnalysis": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.NumberTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.OperatorAlgebras": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.OptimizationandControl": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.Probability": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.QuantumAlgebra": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.RingsandAlgebras": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.RepresentationTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.SymplecticGeometry": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.SpectralTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Mathematics.StatisticsTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.MaterialsScience": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.OtherCondensedMatter": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.QuantumGases": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.SoftCondensedMatter": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.StatisticalMechanics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.Superconductivity": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.MathematicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.ChaoticDynamics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.PatternFormationandSolitons": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.NuclearExperiment": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.NuclearTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AcceleratorPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AppliedPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AtomicandMolecularClusters": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.AtomicPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.BiologicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.ChemicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.ClassicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.ComputationalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.PhysicsEducation": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.FluidDynamics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.GeneralPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.Geophysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.InstrumentationandDetectors": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.MedicalPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.Optics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.PlasmaPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.PopularPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.PhysicsandSociety": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.SpacePhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Physics.QuantumPhysics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.QuantitativeBiology.Biomolecules": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.CellBehavior": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.Genomics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.Economics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.RiskManagement": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics": {"qualname": 1, "fullname": 3, "doc": 1}, "arxiv.category.Statistics.Applications": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics.Computation": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics.Methodology": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics.MachineLearning": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics.OtherStatistics": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.category.Statistics.StatisticsTheory": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query": {"qualname": 0, "fullname": 2, "doc": 0}, "arxiv.query.Query": {"qualname": 1, "fullname": 3, "doc": 0}, "arxiv.query.Query.__init__": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Query.attribute": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Query.AND": {"qualname": 1, "fullname": 3, "doc": 0}, "arxiv.query.Query.OR": {"qualname": 1, "fullname": 3, "doc": 0}, "arxiv.query.Query.ANDNOT": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Query.Operator": {"qualname": 2, "fullname": 4, "doc": 1}, "arxiv.query.Query.Operator.And": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Query.Operator.Or": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Query.Operator.AndNot": {"qualname": 3, "fullname": 5, "doc": 0}, "arxiv.query.Query.to_string": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute": {"qualname": 1, "fullname": 3, "doc": 4}, "arxiv.query.Attribute.Title": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.Author": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.Abstract": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.Comment": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.JournalReference": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.Category": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.ReportNumber": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.ID": {"qualname": 2, "fullname": 4, "doc": 0}, "arxiv.query.Attribute.All": {"qualname": 1, "fullname": 3, "doc": 0}}, "length": 255, "save": true}, "index": {"qualname": {"root": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.updated": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.summary": {"tf": 1}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 33}}}}, "l": {"docs": {"arxiv.api.Result.Link.rel": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv.api.SortCriterion.Relevance": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {"arxiv.query.Attribute.ReportNumber": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.Robotics": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}}, "df": 1}}}}}}}}}, "_": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "_": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.query.Query.__init__": {"tf": 1}}, "df": 10}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.entry_id": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {"arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics": {"tf": 1}, "arxiv.category.Economics.Econometrics": {"tf": 1}, "arxiv.category.Economics.GeneralEconomics": {"tf": 1}, "arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Economics.Econometrics": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.updated": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.ArxivError.url": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {"arxiv.api.Result.published": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.primary_category": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.Mathematics.Probability": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.pdf_url": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Client.page_size": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.Performance": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics": {"tf": 1}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}, "arxiv.category.Physics.MaterialsScience": {"tf": 1}, "arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}, "arxiv.category.Physics.QuantumGases": {"tf": 1}, "arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}, "arxiv.category.Physics.StatisticalMechanics": {"tf": 1}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}, "arxiv.category.Physics.Superconductivity": {"tf": 1}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}, "arxiv.category.Physics.ChaoticDynamics": {"tf": 1}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}, "arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}, "arxiv.category.Physics.NuclearExperiment": {"tf": 1}, "arxiv.category.Physics.NuclearTheory": {"tf": 1}, "arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}, "arxiv.category.Physics.AppliedPhysics": {"tf": 1}, "arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}, "arxiv.category.Physics.AtomicPhysics": {"tf": 1}, "arxiv.category.Physics.BiologicalPhysics": {"tf": 1}, "arxiv.category.Physics.ChemicalPhysics": {"tf": 1}, "arxiv.category.Physics.ClassicalPhysics": {"tf": 1}, "arxiv.category.Physics.ComputationalPhysics": {"tf": 1}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}, "arxiv.category.Physics.PhysicsEducation": {"tf": 1}, "arxiv.category.Physics.FluidDynamics": {"tf": 1}, "arxiv.category.Physics.GeneralPhysics": {"tf": 1}, "arxiv.category.Physics.Geophysics": {"tf": 1}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}, "arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}, "arxiv.category.Physics.MedicalPhysics": {"tf": 1}, "arxiv.category.Physics.Optics": {"tf": 1}, "arxiv.category.Physics.PlasmaPhysics": {"tf": 1}, "arxiv.category.Physics.PopularPhysics": {"tf": 1}, "arxiv.category.Physics.PhysicsandSociety": {"tf": 1}, "arxiv.category.Physics.SpacePhysics": {"tf": 1}, "arxiv.category.Physics.QuantumPhysics": {"tf": 1}}, "df": 52, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics.PhysicsEducation": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.PhysicsandSociety": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.PlasmaPhysics": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.PopularPhysics": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}}, "df": 3}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Query.to_string": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}}, "df": 5}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder.Ascending": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.ArxivError": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 5}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Query.ANDNOT": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}}, "df": 2}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AtomicPhysics": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Query.attribute": {"tf": 1}, "arxiv.query.Attribute": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}, "arxiv.query.Attribute.Abstract": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}, "arxiv.query.Attribute.JournalReference": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}, "arxiv.query.Attribute.ReportNumber": {"tf": 1}, "arxiv.query.Attribute.ID": {"tf": 1}, "arxiv.query.Attribute.All": {"tf": 1}}, "df": 11}}}}}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AppliedPhysics": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {"arxiv.category.Statistics.Applications": {"tf": 1}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Attribute.Abstract": {"tf": 1}}, "df": 1}}}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.summary": {"tf": 1}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.Superconductivity": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortCriterion.Relevance": {"tf": 1}, "arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}, "arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}}, "df": 4}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.SortOrder.Ascending": {"tf": 1}, "arxiv.api.SortOrder.Descending": {"tf": 1}}, "df": 3}}}, "_": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Search.sort_by": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Search.sort_order": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.ComputerScience.Sound": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv.api.Search": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}}, "df": 9}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {"arxiv.api.HTTPError.status": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics": {"tf": 1}, "arxiv.category.Statistics.Applications": {"tf": 1}, "arxiv.category.Statistics.Computation": {"tf": 1}, "arxiv.category.Statistics.Methodology": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.OtherStatistics": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}}, "df": 7, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}}, "df": 2}}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.StatisticalMechanics": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "y": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}}, "df": 1}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.SpectralTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.SpacePhysics": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.comment": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}}, "df": 2}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics.Computation": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}, "arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}, "arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}, "arxiv.category.ComputerScience.Databases": {"tf": 1}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}, "arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}, "arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}, "arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}, "arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}, "arxiv.category.ComputerScience.Graphics": {"tf": 1}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}, "arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}, "arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}, "arxiv.category.ComputerScience.Multimedia": {"tf": 1}, "arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}, "arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}, "arxiv.category.ComputerScience.Performance": {"tf": 1}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}, "arxiv.category.ComputerScience.Robotics": {"tf": 1}, "arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}, "arxiv.category.ComputerScience.Sound": {"tf": 1}, "arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}, "arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}}, "df": 41, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}}, "df": 1}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ComputationalPhysics": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.ComplexVariables": {"tf": 1}}, "df": 1}}}}}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Mathematics.Combinatorics": {"tf": 1}}, "df": 1}}}}}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {"arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.categories": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}}, "df": 2}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.CategoryTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 8}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ClassicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.ChaoticDynamics": {"tf": 1}}, "df": 1}}}}}}}}}}, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ChemicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.journal_ref": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Attribute.JournalReference": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.doi": {"tf": 1}}, "df": 1}, "w": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.download_pdf": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.api.Result.download_source": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder.Descending": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Client.delay_seconds": {"tf": 1}}, "df": 1}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ComputerScience.Databases": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {"arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 7}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Mathematics.Logic": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics.GeneralEconomics": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.GeneralTopology": {"tf": 1}}, "df": 1}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.GeneralPhysics": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.GeometricTopology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.Geophysics": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.ComputerScience.Graphics": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.GroupTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"arxiv.api.Result.Author.name": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Client.num_retries": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}}, "df": 2}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.NumberTheory": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.NuclearExperiment": {"tf": 1}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.NuclearTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.Link.href": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 4}}}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "w": {"docs": {"arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}}, "df": 4}}}}}}}}}}, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 2}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.MetricGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Statistics.Methodology": {"tf": 1}}, "df": 1}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.MedicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Search.max_results": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Mathematics": {"tf": 1}, "arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}, "arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}, "arxiv.category.Mathematics.Combinatorics": {"tf": 1}, "arxiv.category.Mathematics.CategoryTheory": {"tf": 1}, "arxiv.category.Mathematics.ComplexVariables": {"tf": 1}, "arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}, "arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}, "arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}, "arxiv.category.Mathematics.GeneralTopology": {"tf": 1}, "arxiv.category.Mathematics.GroupTheory": {"tf": 1}, "arxiv.category.Mathematics.GeometricTopology": {"tf": 1}, "arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}, "arxiv.category.Mathematics.Logic": {"tf": 1}, "arxiv.category.Mathematics.MetricGeometry": {"tf": 1}, "arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumberTheory": {"tf": 1}, "arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}, "arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}, "arxiv.category.Mathematics.Probability": {"tf": 1}, "arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}, "arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}, "arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}, "arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}, "arxiv.category.Mathematics.SpectralTheory": {"tf": 1}, "arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}}, "df": 33, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}}, "df": 2}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.MaterialsScience": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}}, "df": 2}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.ComputerScience.Multimedia": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Search.query": {"tf": 1}, "arxiv.query.Query": {"tf": 1}, "arxiv.query.Query.__init__": {"tf": 1}, "arxiv.query.Query.attribute": {"tf": 1}, "arxiv.query.Query.AND": {"tf": 1}, "arxiv.query.Query.OR": {"tf": 1}, "arxiv.query.Query.ANDNOT": {"tf": 1}, "arxiv.query.Query.Operator": {"tf": 1}, "arxiv.query.Query.Operator.And": {"tf": 1}, "arxiv.query.Query.Operator.Or": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}, "arxiv.query.Query.to_string": {"tf": 1}}, "df": 12}, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.query_url_format": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.QuantumGases": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.QuantumPhysics": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}, "arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}, "arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}}, "df": 11}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}, "arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}}, "df": 10}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.query.Attribute.ID": {"tf": 1}}, "df": 1, "_": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Search.id_list": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.FluidDynamics": {"tf": 1}}, "df": 1}}}}}}}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}}, "df": 1}}}}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics.OtherStatistics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Query.Operator": {"tf": 1}, "arxiv.query.Query.Operator.And": {"tf": 1}, "arxiv.query.Query.Operator.Or": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}}, "df": 4, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "c": {"docs": {"arxiv.category.Physics.Optics": {"tf": 1}}, "df": 1}}}}}, "k": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.BiologicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "fullname": {"root": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}, "arxiv.api": {"tf": 1}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.updated": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.summary": {"tf": 1}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortCriterion.Relevance": {"tf": 1}, "arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}, "arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.SortOrder.Ascending": {"tf": 1}, "arxiv.api.SortOrder.Descending": {"tf": 1}, "arxiv.api.Search": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.ArxivError": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}, "arxiv.arxiv": {"tf": 1.4142135623730951}, "arxiv.category": {"tf": 1}, "arxiv.category.ComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}, "arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}, "arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}, "arxiv.category.ComputerScience.Databases": {"tf": 1}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}, "arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}, "arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}, "arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}, "arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}, "arxiv.category.ComputerScience.Graphics": {"tf": 1}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}, "arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}, "arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}, "arxiv.category.ComputerScience.Multimedia": {"tf": 1}, "arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}, "arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}, "arxiv.category.ComputerScience.Performance": {"tf": 1}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}, "arxiv.category.ComputerScience.Robotics": {"tf": 1}, "arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}, "arxiv.category.ComputerScience.Sound": {"tf": 1}, "arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}, "arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}, "arxiv.category.Economics": {"tf": 1}, "arxiv.category.Economics.Econometrics": {"tf": 1}, "arxiv.category.Economics.GeneralEconomics": {"tf": 1}, "arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}, "arxiv.category.Mathematics": {"tf": 1}, "arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}, "arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}, "arxiv.category.Mathematics.Combinatorics": {"tf": 1}, "arxiv.category.Mathematics.CategoryTheory": {"tf": 1}, "arxiv.category.Mathematics.ComplexVariables": {"tf": 1}, "arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}, "arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}, "arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}, "arxiv.category.Mathematics.GeneralTopology": {"tf": 1}, "arxiv.category.Mathematics.GroupTheory": {"tf": 1}, "arxiv.category.Mathematics.GeometricTopology": {"tf": 1}, "arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}, "arxiv.category.Mathematics.Logic": {"tf": 1}, "arxiv.category.Mathematics.MetricGeometry": {"tf": 1}, "arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumberTheory": {"tf": 1}, "arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}, "arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}, "arxiv.category.Mathematics.Probability": {"tf": 1}, "arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}, "arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}, "arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}, "arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}, "arxiv.category.Mathematics.SpectralTheory": {"tf": 1}, "arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}, "arxiv.category.Physics": {"tf": 1}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}, "arxiv.category.Physics.MaterialsScience": {"tf": 1}, "arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}, "arxiv.category.Physics.QuantumGases": {"tf": 1}, "arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}, "arxiv.category.Physics.StatisticalMechanics": {"tf": 1}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}, "arxiv.category.Physics.Superconductivity": {"tf": 1}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}, "arxiv.category.Physics.ChaoticDynamics": {"tf": 1}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}, "arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}, "arxiv.category.Physics.NuclearExperiment": {"tf": 1}, "arxiv.category.Physics.NuclearTheory": {"tf": 1}, "arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}, "arxiv.category.Physics.AppliedPhysics": {"tf": 1}, "arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}, "arxiv.category.Physics.AtomicPhysics": {"tf": 1}, "arxiv.category.Physics.BiologicalPhysics": {"tf": 1}, "arxiv.category.Physics.ChemicalPhysics": {"tf": 1}, "arxiv.category.Physics.ClassicalPhysics": {"tf": 1}, "arxiv.category.Physics.ComputationalPhysics": {"tf": 1}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}, "arxiv.category.Physics.PhysicsEducation": {"tf": 1}, "arxiv.category.Physics.FluidDynamics": {"tf": 1}, "arxiv.category.Physics.GeneralPhysics": {"tf": 1}, "arxiv.category.Physics.Geophysics": {"tf": 1}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}, "arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}, "arxiv.category.Physics.MedicalPhysics": {"tf": 1}, "arxiv.category.Physics.Optics": {"tf": 1}, "arxiv.category.Physics.PlasmaPhysics": {"tf": 1}, "arxiv.category.Physics.PopularPhysics": {"tf": 1}, "arxiv.category.Physics.PhysicsandSociety": {"tf": 1}, "arxiv.category.Physics.SpacePhysics": {"tf": 1}, "arxiv.category.Physics.QuantumPhysics": {"tf": 1}, "arxiv.category.QuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}, "arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}, "arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}, "arxiv.category.QuantitativeFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}, "arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}, "arxiv.category.Statistics": {"tf": 1}, "arxiv.category.Statistics.Applications": {"tf": 1}, "arxiv.category.Statistics.Computation": {"tf": 1}, "arxiv.category.Statistics.Methodology": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.OtherStatistics": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}, "arxiv.query": {"tf": 1}, "arxiv.query.Query": {"tf": 1}, "arxiv.query.Query.__init__": {"tf": 1}, "arxiv.query.Query.attribute": {"tf": 1}, "arxiv.query.Query.AND": {"tf": 1}, "arxiv.query.Query.OR": {"tf": 1}, "arxiv.query.Query.ANDNOT": {"tf": 1}, "arxiv.query.Query.Operator": {"tf": 1}, "arxiv.query.Query.Operator.And": {"tf": 1}, "arxiv.query.Query.Operator.Or": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}, "arxiv.query.Query.to_string": {"tf": 1}, "arxiv.query.Attribute": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}, "arxiv.query.Attribute.Abstract": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}, "arxiv.query.Attribute.JournalReference": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}, "arxiv.query.Attribute.ReportNumber": {"tf": 1}, "arxiv.query.Attribute.ID": {"tf": 1}, "arxiv.query.Attribute.All": {"tf": 1}}, "df": 255, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.ArxivError": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 5}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api": {"tf": 1}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.updated": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.summary": {"tf": 1}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortCriterion.Relevance": {"tf": 1}, "arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}, "arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.SortOrder.Ascending": {"tf": 1}, "arxiv.api.SortOrder.Descending": {"tf": 1}, "arxiv.api.Search": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.ArxivError": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 67}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AppliedPhysics": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {"arxiv.category.Statistics.Applications": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}}, "df": 5}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder.Ascending": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Query.ANDNOT": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}}, "df": 2}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.AtomicPhysics": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Query.attribute": {"tf": 1}, "arxiv.query.Attribute": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}, "arxiv.query.Attribute.Abstract": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}, "arxiv.query.Attribute.JournalReference": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}, "arxiv.query.Attribute.ReportNumber": {"tf": 1}, "arxiv.query.Attribute.ID": {"tf": 1}, "arxiv.query.Attribute.All": {"tf": 1}}, "df": 11}}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.query.Attribute.Abstract": {"tf": 1}}, "df": 1}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.updated": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.summary": {"tf": 1}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 33}}}}, "l": {"docs": {"arxiv.api.Result.Link.rel": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv.api.SortCriterion.Relevance": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {"arxiv.query.Attribute.ReportNumber": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.Robotics": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}}, "df": 1}}}}}}}}}, "_": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "_": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.query.Query.__init__": {"tf": 1}}, "df": 10}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.entry_id": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {"arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics": {"tf": 1}, "arxiv.category.Economics.Econometrics": {"tf": 1}, "arxiv.category.Economics.GeneralEconomics": {"tf": 1}, "arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Economics.Econometrics": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.updated": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.ArxivError.url": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {"arxiv.api.Result.published": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.primary_category": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.Mathematics.Probability": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.pdf_url": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Client.page_size": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.Performance": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics": {"tf": 1}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}, "arxiv.category.Physics.MaterialsScience": {"tf": 1}, "arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}, "arxiv.category.Physics.QuantumGases": {"tf": 1}, "arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}, "arxiv.category.Physics.StatisticalMechanics": {"tf": 1}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}, "arxiv.category.Physics.Superconductivity": {"tf": 1}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}, "arxiv.category.Physics.ChaoticDynamics": {"tf": 1}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}, "arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}, "arxiv.category.Physics.NuclearExperiment": {"tf": 1}, "arxiv.category.Physics.NuclearTheory": {"tf": 1}, "arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}, "arxiv.category.Physics.AppliedPhysics": {"tf": 1}, "arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}, "arxiv.category.Physics.AtomicPhysics": {"tf": 1}, "arxiv.category.Physics.BiologicalPhysics": {"tf": 1}, "arxiv.category.Physics.ChemicalPhysics": {"tf": 1}, "arxiv.category.Physics.ClassicalPhysics": {"tf": 1}, "arxiv.category.Physics.ComputationalPhysics": {"tf": 1}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}, "arxiv.category.Physics.PhysicsEducation": {"tf": 1}, "arxiv.category.Physics.FluidDynamics": {"tf": 1}, "arxiv.category.Physics.GeneralPhysics": {"tf": 1}, "arxiv.category.Physics.Geophysics": {"tf": 1}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}, "arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}, "arxiv.category.Physics.MedicalPhysics": {"tf": 1}, "arxiv.category.Physics.Optics": {"tf": 1}, "arxiv.category.Physics.PlasmaPhysics": {"tf": 1}, "arxiv.category.Physics.PopularPhysics": {"tf": 1}, "arxiv.category.Physics.PhysicsandSociety": {"tf": 1}, "arxiv.category.Physics.SpacePhysics": {"tf": 1}, "arxiv.category.Physics.QuantumPhysics": {"tf": 1}}, "df": 52, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics.PhysicsEducation": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.PhysicsandSociety": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.PlasmaPhysics": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.PopularPhysics": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}}, "df": 3}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Query.to_string": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.summary": {"tf": 1}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.Superconductivity": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortCriterion.Relevance": {"tf": 1}, "arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}, "arxiv.api.SortCriterion.SubmittedDate": {"tf": 1}}, "df": 4}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.SortOrder.Ascending": {"tf": 1}, "arxiv.api.SortOrder.Descending": {"tf": 1}}, "df": 3}}}, "_": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Search.sort_by": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Search.sort_order": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.ComputerScience.Sound": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv.api.Search": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}}, "df": 9}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {"arxiv.api.HTTPError.status": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics": {"tf": 1}, "arxiv.category.Statistics.Applications": {"tf": 1}, "arxiv.category.Statistics.Computation": {"tf": 1}, "arxiv.category.Statistics.Methodology": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.OtherStatistics": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}}, "df": 7, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}}, "df": 2}}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.StatisticalMechanics": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "y": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}}, "df": 1}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.SpectralTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.SpacePhysics": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.comment": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}}, "df": 2}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics.Computation": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}, "arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}, "arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}, "arxiv.category.ComputerScience.Databases": {"tf": 1}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}, "arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}, "arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}, "arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}, "arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}, "arxiv.category.ComputerScience.Graphics": {"tf": 1}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}, "arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}, "arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}, "arxiv.category.ComputerScience.Multimedia": {"tf": 1}, "arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}, "arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}, "arxiv.category.ComputerScience.Performance": {"tf": 1}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}, "arxiv.category.ComputerScience.Robotics": {"tf": 1}, "arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}, "arxiv.category.ComputerScience.Sound": {"tf": 1}, "arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}, "arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}}, "df": 41, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}}, "df": 1}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ComputationalPhysics": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.ComplexVariables": {"tf": 1}}, "df": 1}}}}}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Mathematics.Combinatorics": {"tf": 1}}, "df": 1}}}}}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {"arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.categories": {"tf": 1}, "arxiv.category": {"tf": 1}, "arxiv.category.ComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.ArtificialIntelligence": {"tf": 1}, "arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalComplexity": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalEngineeringFinanceAndScience": {"tf": 1}, "arxiv.category.ComputerScience.ComputationalGeometry": {"tf": 1}, "arxiv.category.ComputerScience.ComputationAndLanguage": {"tf": 1}, "arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}, "arxiv.category.ComputerScience.ComputerVisionAndPatternRecognition": {"tf": 1}, "arxiv.category.ComputerScience.ComputersAndSociety": {"tf": 1}, "arxiv.category.ComputerScience.Databases": {"tf": 1}, "arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}, "arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}, "arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}, "arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}, "arxiv.category.ComputerScience.EmergingTechnologies": {"tf": 1}, "arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}, "arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}, "arxiv.category.ComputerScience.Graphics": {"tf": 1}, "arxiv.category.ComputerScience.ComputerScienceAndGameTheory": {"tf": 1}, "arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}, "arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}, "arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}, "arxiv.category.ComputerScience.Multimedia": {"tf": 1}, "arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}, "arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}, "arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}, "arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}, "arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}, "arxiv.category.ComputerScience.Performance": {"tf": 1}, "arxiv.category.ComputerScience.ProgrammingLanguages": {"tf": 1}, "arxiv.category.ComputerScience.Robotics": {"tf": 1}, "arxiv.category.ComputerScience.SymbolicComputation": {"tf": 1}, "arxiv.category.ComputerScience.Sound": {"tf": 1}, "arxiv.category.ComputerScience.SoftwareEngineering": {"tf": 1}, "arxiv.category.ComputerScience.SocialAndInformationNetworks": {"tf": 1}, "arxiv.category.ComputerScience.SystemsAndControl": {"tf": 1}, "arxiv.category.Economics": {"tf": 1}, "arxiv.category.Economics.Econometrics": {"tf": 1}, "arxiv.category.Economics.GeneralEconomics": {"tf": 1}, "arxiv.category.Economics.TheoreticalEconomics": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.AudioAndSpeechProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SignalProcessing": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience.SystemsAndControl": {"tf": 1}, "arxiv.category.Mathematics": {"tf": 1}, "arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}, "arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}, "arxiv.category.Mathematics.Combinatorics": {"tf": 1}, "arxiv.category.Mathematics.CategoryTheory": {"tf": 1}, "arxiv.category.Mathematics.ComplexVariables": {"tf": 1}, "arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}, "arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}, "arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}, "arxiv.category.Mathematics.GeneralTopology": {"tf": 1}, "arxiv.category.Mathematics.GroupTheory": {"tf": 1}, "arxiv.category.Mathematics.GeometricTopology": {"tf": 1}, "arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}, "arxiv.category.Mathematics.Logic": {"tf": 1}, "arxiv.category.Mathematics.MetricGeometry": {"tf": 1}, "arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumberTheory": {"tf": 1}, "arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}, "arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}, "arxiv.category.Mathematics.Probability": {"tf": 1}, "arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}, "arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}, "arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}, "arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}, "arxiv.category.Mathematics.SpectralTheory": {"tf": 1}, "arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}, "arxiv.category.Physics": {"tf": 1}, "arxiv.category.Physics.CosmologyandNongalacticAstrophysics": {"tf": 1}, "arxiv.category.Physics.EarthandPlanetaryAstrophysics": {"tf": 1}, "arxiv.category.Physics.AstrophysicsofGalaxies": {"tf": 1}, "arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}, "arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}, "arxiv.category.Physics.SolarandStellarAstrophysics": {"tf": 1}, "arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}, "arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}, "arxiv.category.Physics.MaterialsScience": {"tf": 1}, "arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}, "arxiv.category.Physics.QuantumGases": {"tf": 1}, "arxiv.category.Physics.SoftCondensedMatter": {"tf": 1}, "arxiv.category.Physics.StatisticalMechanics": {"tf": 1}, "arxiv.category.Physics.StronglyCorrelatedElectrons": {"tf": 1}, "arxiv.category.Physics.Superconductivity": {"tf": 1}, "arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}, "arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.AdaptationandSelfOrganizingSystems": {"tf": 1}, "arxiv.category.Physics.ChaoticDynamics": {"tf": 1}, "arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}, "arxiv.category.Physics.PatternFormationandSolitons": {"tf": 1}, "arxiv.category.Physics.ExactlySolvableandIntegrableSystems": {"tf": 1}, "arxiv.category.Physics.NuclearExperiment": {"tf": 1}, "arxiv.category.Physics.NuclearTheory": {"tf": 1}, "arxiv.category.Physics.AcceleratorPhysics": {"tf": 1}, "arxiv.category.Physics.AtmosphericandOceanicPhysics": {"tf": 1}, "arxiv.category.Physics.AppliedPhysics": {"tf": 1}, "arxiv.category.Physics.AtomicandMolecularClusters": {"tf": 1}, "arxiv.category.Physics.AtomicPhysics": {"tf": 1}, "arxiv.category.Physics.BiologicalPhysics": {"tf": 1}, "arxiv.category.Physics.ChemicalPhysics": {"tf": 1}, "arxiv.category.Physics.ClassicalPhysics": {"tf": 1}, "arxiv.category.Physics.ComputationalPhysics": {"tf": 1}, "arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}, "arxiv.category.Physics.PhysicsEducation": {"tf": 1}, "arxiv.category.Physics.FluidDynamics": {"tf": 1}, "arxiv.category.Physics.GeneralPhysics": {"tf": 1}, "arxiv.category.Physics.Geophysics": {"tf": 1}, "arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}, "arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}, "arxiv.category.Physics.MedicalPhysics": {"tf": 1}, "arxiv.category.Physics.Optics": {"tf": 1}, "arxiv.category.Physics.PlasmaPhysics": {"tf": 1}, "arxiv.category.Physics.PopularPhysics": {"tf": 1}, "arxiv.category.Physics.PhysicsandSociety": {"tf": 1}, "arxiv.category.Physics.SpacePhysics": {"tf": 1}, "arxiv.category.Physics.QuantumPhysics": {"tf": 1}, "arxiv.category.QuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}, "arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}, "arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}, "arxiv.category.QuantitativeFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}, "arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}, "arxiv.category.Statistics": {"tf": 1}, "arxiv.category.Statistics.Applications": {"tf": 1}, "arxiv.category.Statistics.Computation": {"tf": 1}, "arxiv.category.Statistics.Methodology": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.OtherStatistics": {"tf": 1}, "arxiv.category.Statistics.StatisticsTheory": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}}, "df": 166}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.CategoryTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 8}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ClassicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.CryptographyAndSecurity": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.ChaoticDynamics": {"tf": 1}}, "df": 1}}}}}}}}}}, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.ChemicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.CellularAutomataandLatticeGases": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.journal_ref": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Attribute.JournalReference": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.doi": {"tf": 1}}, "df": 1}, "w": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.download_pdf": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.api.Result.download_source": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder.Descending": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Client.delay_seconds": {"tf": 1}}, "df": 1}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ComputerScience.Databases": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.DataStructuresAndAlgorithms": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {"arxiv.category.Physics.DataAnalysisStatisticsandProbability": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.DistributedParallelAndClusterComputing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.DiscreteMathematics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.Physics.DisorderedSystemsandNeuralNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.DigitalLibraries": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 7}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortCriterion.LastUpdatedDate": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Mathematics.Logic": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.LogicinComputerScience": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.GeneralLiterature": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Economics.GeneralEconomics": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.GeneralTopology": {"tf": 1}}, "df": 1}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Physics.GeneralRelativityandQuantumCosmology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.GeneralPhysics": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.GeometricTopology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.Geophysics": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.ComputerScience.Graphics": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.GroupTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"arxiv.api.Result.Author.name": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Client.num_retries": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}}, "df": 2}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.NumberTheory": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.NuclearExperiment": {"tf": 1}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.NuclearTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.NeuralAndEvolutionaryComputing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.NetworkingAndInternetArchitecture": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.Link.href": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 4}}}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.HardwareArchitecture": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.ComputerScience.HumanComputerInteraction": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "w": {"docs": {"arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.HistoryandPhilosophyofPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Physics.HighEnergyAstrophysicalPhenomena": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsExperiment": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsLattice": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsPhenomenology": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.HighEnergyPhysicsTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.__init__": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}}, "df": 4}}}}}}}}}}, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 2}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.MesoscaleandNanoscalePhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.MetricGeometry": {"tf": 1}}, "df": 1}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Statistics.Methodology": {"tf": 1}}, "df": 1}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.MedicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Search.max_results": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Mathematics": {"tf": 1}, "arxiv.category.Mathematics.CommutativeAlgebra": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicGeometry": {"tf": 1}, "arxiv.category.Mathematics.AnalysisofPDEs": {"tf": 1}, "arxiv.category.Mathematics.AlgebraicTopology": {"tf": 1}, "arxiv.category.Mathematics.ClassicalAnalysisandODEs": {"tf": 1}, "arxiv.category.Mathematics.Combinatorics": {"tf": 1}, "arxiv.category.Mathematics.CategoryTheory": {"tf": 1}, "arxiv.category.Mathematics.ComplexVariables": {"tf": 1}, "arxiv.category.Mathematics.DifferentialGeometry": {"tf": 1}, "arxiv.category.Mathematics.DynamicalSystems": {"tf": 1}, "arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.GeneralMathematics": {"tf": 1}, "arxiv.category.Mathematics.GeneralTopology": {"tf": 1}, "arxiv.category.Mathematics.GroupTheory": {"tf": 1}, "arxiv.category.Mathematics.GeometricTopology": {"tf": 1}, "arxiv.category.Mathematics.HistoryandOverview": {"tf": 1}, "arxiv.category.Mathematics.MathInformationTheory": {"tf": 1}, "arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}, "arxiv.category.Mathematics.Logic": {"tf": 1}, "arxiv.category.Mathematics.MetricGeometry": {"tf": 1}, "arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Mathematics.NumericalAnalysis": {"tf": 1}, "arxiv.category.Mathematics.NumberTheory": {"tf": 1}, "arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}, "arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}, "arxiv.category.Mathematics.Probability": {"tf": 1}, "arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}, "arxiv.category.Mathematics.RingsandAlgebras": {"tf": 1}, "arxiv.category.Mathematics.RepresentationTheory": {"tf": 1}, "arxiv.category.Mathematics.SymplecticGeometry": {"tf": 1}, "arxiv.category.Mathematics.SpectralTheory": {"tf": 1}, "arxiv.category.Mathematics.StatisticsTheory": {"tf": 1}}, "df": 33, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience.MathematicalSoftware": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Mathematics.MathematicalPhysics": {"tf": 1}, "arxiv.category.Physics.MathematicalPhysics": {"tf": 1}}, "df": 2}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Physics.MaterialsScience": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.ComputerScience.MachineLearning": {"tf": 1}, "arxiv.category.Statistics.MachineLearning": {"tf": 1}}, "df": 2}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.MultiagentSystems": {"tf": 1}}, "df": 1}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.ComputerScience.Multimedia": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Search.query": {"tf": 1}, "arxiv.query": {"tf": 1}, "arxiv.query.Query": {"tf": 1.4142135623730951}, "arxiv.query.Query.__init__": {"tf": 1.4142135623730951}, "arxiv.query.Query.attribute": {"tf": 1.4142135623730951}, "arxiv.query.Query.AND": {"tf": 1.4142135623730951}, "arxiv.query.Query.OR": {"tf": 1.4142135623730951}, "arxiv.query.Query.ANDNOT": {"tf": 1.4142135623730951}, "arxiv.query.Query.Operator": {"tf": 1.4142135623730951}, "arxiv.query.Query.Operator.And": {"tf": 1.4142135623730951}, "arxiv.query.Query.Operator.Or": {"tf": 1.4142135623730951}, "arxiv.query.Query.Operator.AndNot": {"tf": 1.4142135623730951}, "arxiv.query.Query.to_string": {"tf": 1.4142135623730951}, "arxiv.query.Attribute": {"tf": 1}, "arxiv.query.Attribute.Title": {"tf": 1}, "arxiv.query.Attribute.Author": {"tf": 1}, "arxiv.query.Attribute.Abstract": {"tf": 1}, "arxiv.query.Attribute.Comment": {"tf": 1}, "arxiv.query.Attribute.JournalReference": {"tf": 1}, "arxiv.query.Attribute.Category": {"tf": 1}, "arxiv.query.Attribute.ReportNumber": {"tf": 1}, "arxiv.query.Attribute.ID": {"tf": 1}, "arxiv.query.Attribute.All": {"tf": 1}}, "df": 23}, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.query_url_format": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.QuantumAlgebra": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.QuantumGases": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.QuantumPhysics": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}, "arxiv.category.QuantitativeBiology.CellBehavior": {"tf": 1}, "arxiv.category.QuantitativeBiology.Genomics": {"tf": 1}, "arxiv.category.QuantitativeBiology.MolecularNetworks": {"tf": 1}, "arxiv.category.QuantitativeBiology.NeuronsandCognition": {"tf": 1}, "arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeBiology.PopulationsandEvolution": {"tf": 1}, "arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}, "arxiv.category.QuantitativeBiology.SubcellularProcesses": {"tf": 1}, "arxiv.category.QuantitativeBiology.TissuesandOrgans": {"tf": 1}}, "df": 11}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.category.QuantitativeBiology.QuantitativeMethods": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.category.QuantitativeFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.ComputationalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.Economics": {"tf": 1}, "arxiv.category.QuantitativeFinance.GeneralFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.MathematicalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.PortfolioManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.PricingofSecurities": {"tf": 1}, "arxiv.category.QuantitativeFinance.RiskManagement": {"tf": 1}, "arxiv.category.QuantitativeFinance.StatisticalFinance": {"tf": 1}, "arxiv.category.QuantitativeFinance.TradingandMarketMicrostructure": {"tf": 1}}, "df": 10}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.query.Attribute.ID": {"tf": 1}}, "df": 1, "_": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Search.id_list": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv.category.ComputerScience.InformationRetrieval": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.InstrumentationandMethodsforAstrophysics": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.Physics.InstrumentationandDetectors": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.ElectricalEngineeringAndSystemsScience.ImageAndVideoProcessing": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.FormalLanguagesAndAutomataTheory": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.Mathematics.FunctionalAnalysis": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.Physics.FluidDynamics": {"tf": 1}}, "df": 1}}}}}}}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.category.ComputerScience.OtherComputerScience": {"tf": 1}}, "df": 1}}}}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Physics.OtherCondensedMatter": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.QuantitativeBiology.OtherQuantitativeBiology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.category.Statistics.OtherStatistics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.query.Query.Operator": {"tf": 1}, "arxiv.query.Query.Operator.And": {"tf": 1}, "arxiv.query.Query.Operator.Or": {"tf": 1}, "arxiv.query.Query.Operator.AndNot": {"tf": 1}}, "df": 4, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.category.ComputerScience.OperatingSystems": {"tf": 1}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"arxiv.category.Mathematics.OperatorAlgebras": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.Mathematics.OptimizationandControl": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "c": {"docs": {"arxiv.category.Physics.Optics": {"tf": 1}}, "df": 1}}}}}, "k": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.category.Mathematics.KTheoryandHomology": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.category.Physics.BiologicalPhysics": {"tf": 1}}, "df": 1}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.category.QuantitativeBiology.Biomolecules": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "doc": {"root": {"0": {"5": {"5": {"8": {"0": {"docs": {}, "df": 0, "v": {"1": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"1": {"0": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"3": {"8": {"6": {"docs": {}, "df": 0, "v": {"1": {"docs": {"arxiv": {"tf": 2.449489742783178}}, "df": 1}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 4}, "1": {"0": {"0": {"0": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {"arxiv": {"tf": 2}}, "df": 1}, "6": {"0": {"5": {"docs": {"arxiv": {"tf": 2.449489742783178}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 4, ",": {"0": {"0": {"0": {"docs": {}, "df": 0, ",": {"0": {"0": {"0": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "2": {"0": {"0": {"0": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "7": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}, "docs": {"arxiv": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "1": {"0": {"7": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}}, "df": 2}, "3": {"0": {"0": {"docs": {}, "df": 0, ",": {"0": {"0": {"0": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "9": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}, "5": {"7": {"6": {"5": {"docs": {}, "df": 0, "v": {"1": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 5.916079783099616}, "arxiv.api.Result": {"tf": 1.4142135623730951}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1.4142135623730951}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1.4142135623730951}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1.4142135623730951}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 15, "'": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Search": {"tf": 1}, "arxiv.api.Client": {"tf": 1}}, "df": 4}, ":": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.ArxivError.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 2.449489742783178}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Client.query_url_format": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 17, "'": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.SortOrder": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Search.max_results": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}}, "df": 2}}}}, "k": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result": {"tf": 1}}, "df": 2}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.Link.href": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1.7320508075688772}}, "df": 5, "'": {"docs": {"arxiv.api.Result.Author.name": {"tf": 1}}, "df": 1}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.api.Result.summary": {"tf": 1}}, "df": 1, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "y": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "'": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.ArxivError": {"tf": 1}}, "df": 2}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 4.795831523312719}}, "df": 1}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client": {"tf": 1}}, "df": 2}}, "e": {"docs": {"arxiv": {"tf": 2.23606797749979}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 5, "_": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 4}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 2}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.SortCriterion": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2.449489742783178}}, "df": 1}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}}}}, "i": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}}, "df": 2}}}}}, "e": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Result.comment": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 6}}}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}}, "df": 3}}}}}, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "/": {"0": {"2": {"0": {"1": {"0": {"8": {"2": {"docs": {}, "df": 0, "v": {"1": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "i": {"docs": {}, "df": 0, "p": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.published": {"tf": 1}}, "df": 2}}}}}}, "d": {"docs": {}, "df": 0, "f": {"docs": {"arxiv": {"tf": 2.6457513110645907}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}}, "df": 3, "_": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "w": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 2}}, "df": 1}}, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "w": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}}, "df": 2}}, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}, "u": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 2.6457513110645907}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1.4142135623730951}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}}, "df": 5}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 5.0990195135927845}}, "df": 1}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 2}}, "df": 4, "'": {"docs": {"arxiv.api.Result.Link.href": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 4}}, "e": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.updated": {"tf": 1}}, "df": 2, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "g": {"docs": {"arxiv": {"tf": 2}}, "df": 1, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Client": {"tf": 1}}, "df": 2}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 3.1622776601683795}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 8}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 3, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.HTTPError.status": {"tf": 1}}, "df": 1}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 3.1622776601683795}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 3}}}}}, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}}, "df": 2}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}, "o": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.api.Result.entry_id": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Client.query_url_format": {"tf": 1}}, "df": 3}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 3}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}}}}}, "w": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 4}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 3, "_": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {"arxiv": {"tf": 2.23606797749979}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 2}}, "df": 1}}}}}}}}}}}}, "i": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.doi": {"tf": 1}}, "df": 2}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search": {"tf": 1}}, "df": 2}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {"arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 3}}}}}, "f": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2.449489742783178}, "arxiv.api.Search": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1.4142135623730951}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 4}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}}, "df": 3}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}}, "df": 2}}}}}, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 3}}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "e": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 2.6457513110645907}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}}, "df": 3}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}}, "df": 2}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client": {"tf": 1}}, "df": 2}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.ArxivError": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {"arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 4}}}, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.query_url_format": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 5}}}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.category.ComputerScience": {"tf": 1}, "arxiv.category.Economics": {"tf": 1}, "arxiv.category.ElectricalEngineeringAndSystemsScience": {"tf": 1}, "arxiv.category.Mathematics": {"tf": 1}, "arxiv.category.Physics": {"tf": 1}, "arxiv.category.QuantitativeBiology": {"tf": 1}, "arxiv.category.QuantitativeFinance": {"tf": 1}, "arxiv.category.Statistics": {"tf": 1}, "arxiv.query.Query.Operator": {"tf": 1}}, "df": 9}}}}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError.entry": {"tf": 1}}, "df": 6}}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 7.615773105863909}, "arxiv.api.Result": {"tf": 1.4142135623730951}, "arxiv.api.Result.__init__": {"tf": 1.7320508075688772}, "arxiv.api.Result.updated": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.summary": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 2.23606797749979}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Link.rel": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1.4142135623730951}, "arxiv.api.SortOrder": {"tf": 1.4142135623730951}, "arxiv.api.Search.max_results": {"tf": 1.4142135623730951}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client": {"tf": 1.4142135623730951}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 2}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1.4142135623730951}, "arxiv.api.HTTPError": {"tf": 1.4142135623730951}}, "df": 27, "s": {"docs": {}, "df": 0, "(": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}}, "'": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Result.authors": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}}, "df": 6}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 3}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}}, "df": 2}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"arxiv.api.Result.Link.rel": {"tf": 1}}, "df": 1}}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1.7320508075688772}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}}, "df": 6}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 8, "e": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}}, "df": 2}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}}, "df": 3}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 6}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}}, "df": 2}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.HTTPError.status": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "w": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Client.results": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 2}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search": {"tf": 1.7320508075688772}}, "df": 2}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.comment": {"tf": 1}}, "df": 2}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Result.Author.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Result.Link.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 10}}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 2}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 2}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 2.449489742783178}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 3.605551275463989}, "arxiv.api.Search": {"tf": 1.7320508075688772}, "arxiv.api.Search.results": {"tf": 1.7320508075688772}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 9}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.ArxivError": {"tf": 1}}, "df": 4}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.sort_by": {"tf": 1}}, "df": 2}}, "a": {"docs": {"arxiv.api.Search.__init__": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 2.23606797749979}, "arxiv.api.Result.primary_category": {"tf": 1.4142135623730951}, "arxiv.api.Result.categories": {"tf": 1.4142135623730951}}, "df": 3}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 5}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 2}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 2.8284271247461903}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Search": {"tf": 1.4142135623730951}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1.4142135623730951}, "arxiv.api.Client.get": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1.4142135623730951}}, "df": 10, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 3}}, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1, "'": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 6}}}, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 2}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Client.results": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Client.results": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.links": {"tf": 1}}, "df": 2, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.updated": {"tf": 1}}, "df": 2}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 2.23606797749979}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.doi": {"tf": 1}, "arxiv.api.Result.links": {"tf": 1}, "arxiv.api.Result.pdf_url": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.ArxivError.url": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 10}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1.4142135623730951}, "arxiv.api.Search.sort_order": {"tf": 1}}, "df": 4}}}, "g": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "/": {"2": {"1": {"0": {"7": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}}, "df": 2}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.query.Attribute": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.published": {"tf": 1}}, "df": 2}}}}}, "b": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client": {"tf": 1}}, "df": 2}}}}}, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 2}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "x": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Client.results": {"tf": 1}}, "df": 2, "s": {"docs": {}, "df": 0, "=": {"1": {"0": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "(": {"docs": {}, "df": 0, "'": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}}, "df": 3}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 6, "#": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.query.Attribute": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}}, "df": 2}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {"arxiv.api.Result.MissingFieldError.message": {"tf": 1}, "arxiv.api.ArxivError.message": {"tf": 1}}, "df": 2}}}}}, "y": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Client.results": {"tf": 1.4142135623730951}}, "df": 2}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"arxiv.api.Result.MissingFieldError.missing_field": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 5, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "u": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}}, "df": 4}}}, "r": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 3}}}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"arxiv": {"tf": 4.69041575982343}, "arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search": {"tf": 1.7320508075688772}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Search.get": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1.4142135623730951}}, "df": 11}}}}, "e": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Result": {"tf": 1}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.query": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}, "arxiv.query.Attribute": {"tf": 1}}, "df": 14}, "t": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Search.max_results": {"tf": 1}}, "df": 2}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Client.delay_seconds": {"tf": 1}}, "df": 2}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Search": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {"arxiv": {"tf": 2}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}, "arxiv.api.Search.__init__": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.ArxivError.__init__": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1.4142135623730951}}, "df": 13}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.SortCriterion": {"tf": 1.4142135623730951}, "arxiv.api.SortOrder": {"tf": 1.4142135623730951}, "arxiv.api.Search.sort_by": {"tf": 1}, "arxiv.api.Search.sort_order": {"tf": 1}}, "df": 5, "_": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.SortCriterion": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}}, "df": 3}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.SortOrder": {"tf": 1}}, "df": 2}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 2}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Client.page_size": {"tf": 1}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}}, "df": 4}}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.results": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 3}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {"arxiv.api.ArxivError": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 2}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}}}}, "f": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1, "o": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Search.results": {"tf": 1}}, "df": 2, ":": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}, "t": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}}, "f": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.Author": {"tf": 1}, "arxiv.api.Result.Link": {"tf": 1}}, "df": 2}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv.api.Result.MissingFieldError": {"tf": 1}, "arxiv.api.SortOrder": {"tf": 1}}, "df": 2}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2.6457513110645907}}, "df": 1}}}}}, "d": {"docs": {"arxiv": {"tf": 1.7320508075688772}, "arxiv.api.Result.get_short_id": {"tf": 1}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 3, "_": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2.6457513110645907}, "arxiv.api.Search.id_list": {"tf": 1}}, "df": 2}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1.7320508075688772}, "arxiv.api.SortCriterion": {"tf": 1}}, "df": 2}}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "e": {"docs": {"arxiv.api.Result.Link.content_type": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 2.8284271247461903}, "arxiv.api.Result.title": {"tf": 1}, "arxiv.api.Result.Link.title": {"tf": 1}}, "df": 3}}, "m": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1}}, "df": 3}}}, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.primary_category": {"tf": 1}, "arxiv.api.Result.categories": {"tf": 1}}, "df": 3}}}}}}, "r": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"arxiv.api.Result.download_source": {"tf": 1}}, "df": 1}}}}}, "h": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Result.links": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Client.results": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1.4142135623730951}, "arxiv.api.UnexpectedEmptyPageError.__init__": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 4, "p": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 2}}}, "o": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "(": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 2.23606797749979}, "arxiv.api.Search.max_results": {"tf": 1}, "arxiv.api.Client.page_size": {"tf": 1}, "arxiv.api.Client.delay_seconds": {"tf": 1}, "arxiv.api.Client.num_retries": {"tf": 1}, "arxiv.api.ArxivError.retry": {"tf": 1}}, "df": 6}}}, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"arxiv": {"tf": 2}}, "df": 1}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Client.__init__": {"tf": 1}}, "df": 2}}, "n": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.UnexpectedEmptyPageError": {"tf": 1}, "arxiv.api.HTTPError": {"tf": 1}}, "df": 3}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Author.name": {"tf": 1}}, "df": 2}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.download_pdf": {"tf": 1}, "arxiv.api.Result.download_source": {"tf": 1}, "arxiv.api.Client.results": {"tf": 1.4142135623730951}}, "df": 4}}}, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}}, "z": {"docs": {"arxiv": {"tf": 1.7320508075688772}}, "df": 1}, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {"arxiv": {"tf": 3}}, "df": 1}}, "y": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1.4142135623730951}, "arxiv.api.Client.results": {"tf": 1.4142135623730951}}, "df": 2}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "'": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}, "arxiv.api.Result.Author.__init__": {"tf": 1}, "arxiv.api.Result.Link.__init__": {"tf": 1}}, "df": 3}}}}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"arxiv": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.Link.content_type": {"tf": 1}, "arxiv.api.HTTPError.status": {"tf": 1}}, "df": 3, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.entry_id": {"tf": 1}, "arxiv.api.Result.get_short_id": {"tf": 1.4142135623730951}}, "df": 3}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Client.results": {"tf": 1}, "arxiv.api.HTTPError.__init__": {"tf": 1}}, "df": 2}}}}}, "s": {"docs": {}, "df": 0, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {"arxiv.query.Attribute": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv.api.Result.Link.href": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.UnexpectedEmptyPageError": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"arxiv": {"tf": 1}, "arxiv.api.Result.journal_ref": {"tf": 1}}, "df": 2, "_": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {"arxiv": {"tf": 1}}, "df": 1}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {"arxiv": {"tf": 1}}, "df": 1}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"arxiv.api.Client.__init__": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"arxiv.api.Result.pdf_url": {"tf": 1}}, "df": 1}}}}}}}, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {"arxiv.api.Result.__init__": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"arxiv.api.Result.Author.__init__": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {"arxiv.api.Result.Link.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "_": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "_": {"docs": {}, "df": 0, "_": {"docs": {"arxiv.api.Search.results": {"tf": 1}}, "df": 1}}}}}}}}}}}, "pipeline": ["trimmer", "stopWordFilter", "stemmer"], "_isPrebuiltIndex": true} \ No newline at end of file diff --git a/tests/test_download.py b/tests/test_download.py index 6c825b7..9504c41 100644 --- a/tests/test_download.py +++ b/tests/test_download.py @@ -1,4 +1,4 @@ -from arxiv import arxiv +from arxiv import api import os import shutil import tempfile @@ -9,7 +9,7 @@ class TestDownload(unittest.TestCase): @classmethod def setUpClass(self): - self.fetched_result = next(arxiv.Search(id_list=["1605.08386"]).results()) + self.fetched_result = next(api.Search(id_list=["1605.08386"]).results()) @classmethod def setUp(self): diff --git a/tests/test_query.py b/tests/test_query.py new file mode 100644 index 0000000..ffbb00c --- /dev/null +++ b/tests/test_query.py @@ -0,0 +1,111 @@ +import unittest +from arxiv import api, category, query + +from typing import List + + +class TestQuery(unittest.TestCase): + def test_simple_queries(self): + q_empty = query.Query() + self.assertEqual(q_empty.to_string(), '') + keywords = 'some keywords' + q_keywords = query.Query(keywords) + self.assertEqual(q_keywords.to_string(), keywords) + + def test_attribute_queries(self): + # Without and without spaces. + for value in ['value', 'space value']: + for attr in query.Attribute: + q = query.Query.attribute(attr, value) + self.assertEqual(q.to_string(), '{}:"{}"'.format(attr.value, value)) + + def test_and(self): + q1, q1_expected = query.Query("a").AND(query.Query("b")), '(a) AND (b)' + self.assertEqual(q1.to_string(), '(a) AND (b)') + q2 = query.Query.attribute(query.Attribute.Title, "title").AND(q1) + self.assertEqual(q2.to_string(), '(ti:"title") AND ({})'.format(q1_expected)) + + def test_or(self): + q1, q1_expected = query.Query("a").OR(query.Query("b")), '(a) OR (b)' + self.assertEqual(q1.to_string(), '(a) OR (b)') + q2 = query.Query.attribute(query.Attribute.Title, "title").OR(q1) + self.assertEqual(q2.to_string(), '(ti:"title") OR ({})'.format(q1_expected)) + + def test_andnot(self): + q_a, q_b = query.Query('a'), query.Query('b') + q1, q1_expected = q_a.ANDNOT(q_b), '(a) ANDNOT (b)' + self.assertEqual(q1.to_string(), q1_expected) + q2 = query.Query.attribute(query.Attribute.Title, "title").ANDNOT(q1) + self.assertEqual(q2.to_string(), '(ti:"title") ANDNOT ({})'.format(q1_expected)) + # Reverse order must yield a different condition. + q_reverse = q_b.ANDNOT(q_a) + self.assertEqual(q_reverse.to_string(), '(b) ANDNOT (a)') + + def test_composition(self): + """Grab-bag for complex cases.""" + q_a, q_b = query.Query('a'), query.Query('b') + self.assertEqual( + q_a.AND(q_b).OR(q_a).ANDNOT(q_b).to_string(), + '(((a) AND (b)) OR (a)) ANDNOT (b)' + ) + q_title = query.Query.attribute(query.Attribute.Title, 'some title') + self.assertEqual( + q_title.ANDNOT(q_a).AND(q_b).OR(q_title).to_string(), + '(((ti:"some title") ANDNOT (a)) AND (b)) OR (ti:"some title")' + ) + self.assertEqual( + q_title.ANDNOT(q_a.OR(q_b)).to_string(), + '(ti:"some title") ANDNOT ((a) OR (b))' + ) + self.assertEqual( + (q_a.OR(q_b)).ANDNOT(q_title).to_string(), + '((a) OR (b)) ANDNOT (ti:"some title")' + ) + + +class TestQuery_Integration(unittest.TestCase): + def abbr_results(self, query: query.Query) -> List[api.Result.Author]: + results = list(api.Search(query.to_string(), max_results=10).results()) + self.assertTrue(len(results) > 0, '0 results for {}'.format(query.to_string())) + return results + + def test_attributes(self): + q_title = query.Query.attribute(query.Attribute.Title, "quantum") + for result in self.abbr_results(q_title): + self.assertIn("quantum", result.title.lower()) + q_author = query.Query.attribute(query.Attribute.Author, "karpathy") + for result in self.abbr_results(q_author): + self.assertTrue(any(["karpathy" in a.name.lower() for a in result.authors])) + + def test_operators(self): + q_econ = query.Query.attribute( + query.Attribute.Category, + category.Economics.GeneralEconomics.value + ) + q_qf = query.Query.attribute( + query.Attribute.Category, + category.QuantitativeFinance.Economics.value + ) + q_cats_and = q_econ.AND(q_qf) + for result in self.abbr_results(q_cats_and): + self.assertIn(category.Economics.GeneralEconomics.value, result.categories) + self.assertIn(category.QuantitativeFinance.Economics.value, result.categories) + q_cats_xor = q_econ.OR(q_qf).ANDNOT(q_cats_and) + for result in self.abbr_results(q_cats_xor): + has_econ = category.Economics.GeneralEconomics.value in result.categories + has_qf = category.QuantitativeFinance.Economics.value in result.categories + self.assertTrue(has_econ or has_qf and not (has_econ and has_qf)) + q_karpathy = query.Query.attribute( + query.Attribute.Author, + "karpathy" + ).AND(query.Query.attribute( + query.Attribute.Title, + "PixelCNN" + )) + results_karpathy = self.abbr_results(q_karpathy) + for result in results_karpathy: + self.assertTrue(any(["karpathy" in a.name.lower() for a in result.authors])) + self.assertIn("pixelcnn", result.title.lower()) + # Aug. 30, 2021: only one article matches. + self.assertEqual(len(results_karpathy), 1) + self.assertEqual(results_karpathy[0].get_short_id(), "1701.05517v1")