From b11c84fbded736ec788752dc79852bad55e0810c Mon Sep 17 00:00:00 2001 From: dpguthrie Date: Fri, 21 Aug 2020 22:29:52 -0600 Subject: [PATCH] Initial commit for 0.0.1 --- .gitattributes | 1 + .gitignore | 80 ++ .travis.yml | 26 + CHANGELOG.md | 5 + LICENSE | 21 + README.md | 74 ++ bankfind/__init__.py | 8 + bankfind/base.py | 131 ++ bankfind/main.py | 154 +++ bankfind/metadata/__init__.py | 14 + bankfind/metadata/failure.py | 93 ++ bankfind/metadata/history.py | 2108 ++++++++++++++++++++++++++++++ bankfind/metadata/institution.py | 1468 +++++++++++++++++++++ bankfind/metadata/location.py | 348 +++++ bankfind/metadata/summary.py | 1178 +++++++++++++++++ docs/docs/css/termynal.css | 101 ++ docs/docs/filtering.md | 156 +++ docs/docs/functions.md | 588 +++++++++ docs/docs/img/favicon.png | Bin 0 -> 10658 bytes docs/docs/img/logo.png | Bin 0 -> 14226 bytes docs/docs/img/small_logo.png | Bin 0 -> 10778 bytes docs/docs/index.md | 75 ++ docs/docs/js/custom.js | 149 +++ docs/docs/js/termynal.js | 263 ++++ docs/docs/release_notes.md | 0 docs/mkdocs.yml | 63 + pyproject.toml | 43 + pytest.ini | 10 + requirements.txt | 2 + tests/__init__.py | 0 tests/test_functions.py | 46 + 31 files changed, 7205 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .travis.yml create mode 100644 CHANGELOG.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 bankfind/__init__.py create mode 100644 bankfind/base.py create mode 100644 bankfind/main.py create mode 100644 bankfind/metadata/__init__.py create mode 100644 bankfind/metadata/failure.py create mode 100644 bankfind/metadata/history.py create mode 100644 bankfind/metadata/institution.py create mode 100644 bankfind/metadata/location.py create mode 100644 bankfind/metadata/summary.py create mode 100644 docs/docs/css/termynal.css create mode 100644 docs/docs/filtering.md create mode 100644 docs/docs/functions.md create mode 100644 docs/docs/img/favicon.png create mode 100644 docs/docs/img/logo.png create mode 100644 docs/docs/img/small_logo.png create mode 100644 docs/docs/index.md create mode 100644 docs/docs/js/custom.js create mode 100644 docs/docs/js/termynal.js create mode 100644 docs/docs/release_notes.md create mode 100644 docs/mkdocs.yml create mode 100644 pyproject.toml create mode 100644 pytest.ini create mode 100644 requirements.txt create mode 100644 tests/__init__.py create mode 100644 tests/test_functions.py diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..2125666 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e6c4e11 --- /dev/null +++ b/.gitignore @@ -0,0 +1,80 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# PyBuilder +target/ + +# pyenv +.python-version + +# Environments +.venv + +# mkdocs documentation +*/docs/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# Project +.vscode/ +reference/ +next.py \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..b347475 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,26 @@ +language: python +python: + - 3.5 + - 3.6 + - 3.7 + - 3.8 +before_install: + - python --version + - pip install -U pip + - pip install -U pytest + - pip install codecov +install: + - pip install Cython + - pip install -r requirements.txt + - pip install ".[test]" . +script: pytest +after_success: + - codecov +deploy: + provider: pypi + username: "__token__" + password: + secure: Fbf2V6YVrjQaD3jNMP6Iu7gkGhPQjLhEWWVATaB4hAD/SXVdjKwOmdGgw7fhEgDT0SRrWiamo/2C6qTUtD/g17gNYlsvsjp5dmWuh27hLF0j9Ng0Xti5P1vw5NsGGOqvb3Bvd+YegTUWOw6QQ695OXox9UAOFjvwbshk+YhaJ/CuerPBZKEm7lbsoPfKwsg+u7s9eh6LTPyFZpyNlEyeOew8/YP30Rk8JD6wEy9FSgyyawIUpeJjczwSMKhLXdtHiXhhEEAr9Ce+Epi1JPVnO8QcdWQK8PfjDBc7reBkeO1k+1bNMtPlDBYHYnOR9aci5nsKFTd3XAxAV1n8tCohnnPBHMlh8F/UbtjVtXoxxfVzBMeWyV65nymHbgk5sk0WWd6Ae+IEvRb6PKHxU49DQfoxku39tQMyfA9gWdtpOu8d5TNLrcRsAwrNOhB7qT7bp4dmcx3FoctZzJ6d0Y3B7jcneo8229G+3HL8XLyHb5CLiGJ7S9IOWwa3ctshW36vXydGZmb4+BqUv/DRfUlNsgndTpImRSG7HqTPqgCc7OMsyYWOKiZyKJqYGHBSiMaLWoTJUoAR86CnOm+0aqevk/K2vC0ek69E6wDxakuLAd4cqXeyhv2RYUGOW/aKtvfqEJllfu/pHkhq98rnd567Ki7KX29q1zM/frP5r76mPLY= + on: + tags: true + python: 3.8 diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..71d29e7 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,5 @@ +# Changelog + +## 0.0.1 + +- Ability to hit 5 separate endpoints (institutions, failures, history, locations, and summary) as well as filter and search according to the API specifications diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d09364f --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2020 Doug Guthrie + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..74c44ee --- /dev/null +++ b/README.md @@ -0,0 +1,74 @@ +

+ +

+

+ Python interface to the FDIC's API for publically available bank data +

+

+ + Build Status + + + Coverage + + + Package version + +

+ +--- + +**Documentation**: https://bankfind.dpguthrie.com + +**Source Code**: https://github.com/dpguthrie/bankfind + +**FDIC Documentation**: https://banks.data.fdic.gov/docs/ + +--- + +## Overview + +**bankfind** is a python interface to publically available bank data from the FDIC. + +There are currently, as of 8/11/20, five endpoints that the FDIC has exposed to the public: + +- **failures** - returns detail on failed financial institutions +- **institutions** - returns a list of financial institutions +- **history** - returns detail on structure change events +- **locations** - returns locations / branches of financial institutions +- **summary** - returns aggregate financial and structure data, subtotaled by year, regarding financial institutions + +## Requirements + +Python 2.7, 3.5+ + +- [Requests](https://requests.readthedocs.io/en/master/) - The elegant and simple HTTP library for Python, built for human beings. +- [Pandas](https://pandas.pydata.org/) - Fast, powerful, flexible and easy to use open source data analysis and manipulation tool + +## Installation + +
+ pip install bankfind + + Successfully installed bankfind + restart ↻ +
+ +## Example + +```python +import bankfind as bf + +# Get Institutions +data = bf.get_institutions() + +# Get Institutions from Colorado with high ROE +data = bf.get_institutions(filters="STNAME:Colorado AND ROE:[25 TO *]") + +# Get Commercial Banks from Colorado that aren't S-Corps +data = bf.get_institutions(filters="STNAME:Colorado AND SUBCHAPS:0 AND CB:1") +``` + +## License + +This project is licensed under the terms of the MIT license. diff --git a/bankfind/__init__.py b/bankfind/__init__.py new file mode 100644 index 0000000..10507a9 --- /dev/null +++ b/bankfind/__init__.py @@ -0,0 +1,8 @@ +"""Python interface to the FDIC's API for publically available bank data""" + +__version__ = '0.0.1' + + +from .main import (get_failures, get_history, get_institutions, # noqa + get_locations, get_summary) +from .metadata import meta_dict # noqa diff --git a/bankfind/base.py b/bankfind/base.py new file mode 100644 index 0000000..21a1b9a --- /dev/null +++ b/bankfind/base.py @@ -0,0 +1,131 @@ +from io import StringIO +import urllib.parse + +import pandas as pd +import requests +from requests.models import Response + +from bankfind.metadata import meta_dict + + +class BF: + + DEFAULTS = { + 'institutions': { + 'sort_by': 'OFFICES', + 'sort_order': 'ASC', + 'limit': 10000, + 'offset': 0, + 'format': 'json', + 'search': True + }, + 'locations': { + 'sort_by': 'NAME', + 'sort_order': 'ASC', + 'limit': 10000, + 'offset': 0, + 'format': 'json', + 'search': False + }, + 'history': { + 'sort_by': 'PROCDATE', + 'sort_order': 'DESC', + 'limit': 10000, + 'offset': 0, + 'format': 'json', + 'search': True + }, + 'summary': { + 'sort_by': 'YEAR', + 'sort_order': 'DESC', + 'limit': 10000, + 'offset': 0, + 'format': 'json', + 'search': False + }, + 'failures': { + 'sort_by': 'FAILDATE', + 'sort_order': 'DESC', + 'limit': 10000, + 'offset': 0, + 'format': 'json', + 'search': False + } + } + + def __init__(self): + pass + + def _construct_params( + self, + key: str, + filters: str = None, + search: str = None, + **kwargs): + d = self.DEFAULTS[key] + params = { + 'sort_by': kwargs.get('sort_by', d['sort_by']), + 'sort_order': kwargs.get( + 'sort_order', d['sort_order']), + 'limit': kwargs.get('limit', d['limit']), + 'offset': kwargs.get('offset', d['offset']), + 'format': 'csv' if kwargs.get('output') == 'pandas' else 'json', + 'download': 'false', + 'fields': kwargs.get( + 'fields', ','.join(list(meta_dict[key].keys()))) + } + if filters: + params.update({'filters': filters}) + if search and d['search']: + params.update({'search': search}) + return params + + def _friendly_fields(self, key, data, dataframe=True): + meta = meta_dict[key] + if isinstance(data, list): + data = pd.DataFrame([i['data'] for i in data]) + data.columns = data.columns.map( + dict((k, meta[k]['title']) + for k in meta.keys() if k in data.columns)) + if dataframe: + return data + return data.to_dict(orient='records') + + def _to_json( + self, + key: str, + response: Response, + friendly_fields: bool = False): + json_data = response.json() + if friendly_fields: + json_data['data'] = self._friendly_fields( + key, json_data['data'], dataframe=False) + else: + json_data['data'] = [i['data'] for i in json_data['data']] + return json_data + + def _to_pandas( + self, + key: str, + response: Response, + friendly_fields: bool = False): + df = pd.read_csv(StringIO(response.text)) + if friendly_fields: + df = self._friendly_fields(key, df) + return df + + def _get_data( + self, + key: str, + filters: str = None, + search: str = None, + **kwargs): + params = self._construct_params(key, filters, search, **kwargs) + r = requests.get( + f"https://banks.data.fdic.gov/api/{key}", + params=urllib.parse.urlencode(params) + ) + if r.ok: + return getattr(self, f"_to_{kwargs.get('output', 'json')}")( + key, r, kwargs.get('friendly_fields', False)) + return r diff --git a/bankfind/main.py b/bankfind/main.py new file mode 100644 index 0000000..00a1463 --- /dev/null +++ b/bankfind/main.py @@ -0,0 +1,154 @@ +from bankfind.base import BF + + +def get_failures(filters: str = None, **kwargs): + """ + Detail on failed financial institutions + + Arguments + --------- + filters: str, default None, optional + Filter for the bank search + + Keyword Arguments + ----------------- + fields: str, default ALL FIELDS, optional + Comma delimited list of fields to search + sort_by: str, default OFFICES, optional + Field name by which to sort returned data + sort_order: str, default ASC, optional + Indicator if ascending (ASC) or descending (DESC) + limit: int, default 10,000, optional + Number of records to return. Maximum is 10,000 + offset: int, default 0, optional + Offset of page to return + format: str, default json, optional + Format of the data to return + friendly_fields: bool, default False, optional + Return friendly field names + """ + return BF()._get_data("failures", filters, **kwargs) + + +def get_history(filters: str = None, search: str = None, **kwargs): + """ + Detail on structure change events + + Arguments + --------- + filters: str, default None, optional + Filter for the bank search + search: str + Flexible text search against institution records. Currently, only + supports name search. Text search and fuzzy matching is supported + as well. + + Keyword Arguments + ----------------- + fields: str, default ALL FIELDS, optional + Comma delimited list of fields to search + sort_by: str, default OFFICES, optional + Field name by which to sort returned data + sort_order: str, default ASC, optional + Indicator if ascending (ASC) or descending (DESC) + limit: int, default 10,000, optional + Number of records to return. Maximum is 10,000 + offset: int, default 0, optional + Offset of page to return + output: str, default json, optional + Format of the data to return, json or pandas + friendly_fields: bool, default False, optional + Return friendly field names + """ + return BF()._get_data("history", filters, search, **kwargs) + + +def get_institutions(filters: str = None, search: str = None, **kwargs): + """ + List of financial institutions + + Arguments + --------- + filters: str, default None, optional + Filter for the bank search + search: str + Flexible text search against institution records. Currently, only + supports name search. Text search and fuzzy matching is supported + as well. + + Keyword Arguments + ----------------- + fields: str, default ALL FIELDS, optional + Comma delimited list of fields to search + sort_by: str, default OFFICES, optional + Field name by which to sort returned data + sort_order: str, default ASC, optional + Indicator if ascending (ASC) or descending (DESC) + limit: int, default 10,000, optional + Number of records to return. Maximum is 10,000 + offset: int, default 0, optional + Offset of page to return + format: str, default json, optional + Format of the data to return + friendly_fields: bool, default False, optional + Return friendly field names + """ + return BF()._get_data("institutions", filters, search, **kwargs) + + +def get_locations(filters: str = None, **kwargs): + """ + List of locations / branches of financial institutions + + Arguments + --------- + filters: str, default None, optional + Filter for the bank search + + Keyword Arguments + ----------------- + fields: str, default ALL FIELDS, optional + Comma delimited list of fields to search + sort_by: str, default OFFICES, optional + Field name by which to sort returned data + sort_order: str, default ASC, optional + Indicator if ascending (ASC) or descending (DESC) + limit: int, default 10,000, optional + Number of records to return. Maximum is 10,000 + offset: int, default 0, optional + Offset of page to return + format: str, default json, optional + Format of the data to return + friendly_fields: bool, default False, optional + Return friendly field names + """ + return BF()._get_data("locations", filters, **kwargs) + + +def get_summary(filters: str = None, **kwargs): + """ + Aggregate financial and structure data, subtotaled by year + + Arguments + --------- + filters: str, default None, optional + Filter for the bank search + + Keyword Arguments + ----------------- + fields: str, default ALL FIELDS, optional + Comma delimited list of fields to search + sort_by: str, default OFFICES, optional + Field name by which to sort returned data + sort_order: str, default ASC, optional + Indicator if ascending (ASC) or descending (DESC) + limit: int, default 10,000, optional + Number of records to return. Maximum is 10,000 + offset: int, default 0, optional + Offset of page to return + format: str, default json, optional + Format of the data to return + friendly_fields: bool, default False, optional + Return friendly field names + """ + return BF()._get_data("summary", filters, **kwargs) diff --git a/bankfind/metadata/__init__.py b/bankfind/metadata/__init__.py new file mode 100644 index 0000000..dd0c6d3 --- /dev/null +++ b/bankfind/metadata/__init__.py @@ -0,0 +1,14 @@ +from .failure import failure_dict +from .history import history_dict +from .institution import institution_dict +from .location import location_dict +from .summary import summary_dict + + +meta_dict = { + 'failures': failure_dict, + 'history': history_dict, + 'institutions': institution_dict, + 'locations': location_dict, + 'summary': summary_dict +} diff --git a/bankfind/metadata/failure.py b/bankfind/metadata/failure.py new file mode 100644 index 0000000..de055c2 --- /dev/null +++ b/bankfind/metadata/failure.py @@ -0,0 +1,93 @@ +failure_dict = { + 'NAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Institution Name', + 'description': "This is the legal name of the institution. When available, the Institution's name links to useful information for the customers and vendors of these institutions. This information includes press releases, information about the acquiring institution, (if applicable), how your accounts and loans are affected, and how vendors can file claims against the receivership." + }, + 'CERT': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Cert', + 'description': 'The certificate number assigned by the FDIC used to identify institutions and for the issuance of insurance certificates. By clicking on this number, you will link to the Institution Directory (ID) system which will provide the last demographic and financial data filed by the selected institution.' + }, + 'FIN': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'FIN', + 'description': 'Financial Institution Number (FIN) is a unique number assigned to the institution as an Assistance Agreement, Conservatorship, Bridge Bank or Receivership.' + }, + 'CITYST': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Location', + 'description': 'The city and state (or territory) of the headquarters of the institution.' + }, + 'FAILDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Effective Date', + 'description': 'The date that the failed / assisted institution ceased to exist as a privately held going concern. For institutions that entered into government ownership, such as FDIC Bridge Banks and RTC conservatorships, this is the date that they entered into such ownership.' + }, + 'FAILYR': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Year', + 'description': 'The 4-digit year that the failed / assisted institution ceased to exist as a privately held going concern. For institutions that entered into government ownership, such as FDIC Bridge Banks and RTC conservatorships, this is the date that they entered into such ownership.' + }, + 'SAVR': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Insurance Fund', + 'description': 'Before 1989, there were two federal deposit insurance funds, one administered by the FDIC, which insured deposits in commercial banks and state-chartered savings banks, and another administered by the Federal Savings and Loan Insurance Corporation (FSLIC), which insured deposits in state- and federally-chartered savings associations. In 1989, the Financial Institutions Reform, Recovery and Enforcement Act (FIRREA) specified that thereafter the FDIC would be the federal deposit insurer of all banks and savings associations and would administer both the FDIC fund, which was renamed the Bank Insurance Fund (BIF) and the replacement for the insolvent FSLIC fund, which was called the Savings Association Insurance Fund (SAIF). Although it was created in 1989, the SAIF was not responsible for savings association failures until 1996. From 1989 through 1995, savings association failures were the responsibility of the Resolution Trust Corporation (RTC). In February 2006, The Federal Deposit Insurance Reform Act of 2005 provided for the merger of the BIF and the SAIF into a single Deposit Insurance Fund (DIF). Necessary technical and conforming changes to the law were made under The Federal Deposit Insurance Reform Conforming Amendments Act of 2005. The merger of the funds was effective on March 31, 2006. For additional information about deposit insurance fund and legislation, go to http://www.fdic.gov/deposit/insurance/index.html.', + 'options': ['BIF', 'RTC', 'FSLIC', 'SAIF', 'DIF', 'FDIC'] + }, + 'RESTYPE1': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Transaction Type', + 'description': "Institutions have been resolved through several different types of transactions. The transaction types outlined below can be grouped into three general categories, based upon the method employed to protect insured depositors and how each transaction affects a failed / assisted institution's charter. In most assistance transactions, insured and uninsured depositors are protected, the failed / assisted institution remains open and its charter survives the resolution process. In purchase and assumption transactions, the failed / assisted institution's insured deposits are transferred to a successor institution, and its charter is closed. In most of these transactions, additional liabilities and assets are also transferred to the successor institution. In payoff transactions, the deposit insurer - the FDIC or the former Federal Savings and Loan Insurance Corporation - pays insured depositors, the failed / assisted institution's charter is closed, and there is no successor institution. For a more complete description of resolution transactions and the FDIC's receivership activities, see Managing the Crisis: The FDIC and RTC Experience, a study prepared by the FDIC's Division of Resolutions and Receiverships. Copies are available from the FDIC's Public Information Center.\nCategory 1 - Institution's charter survives\nA/A\t- Assistance Transactions. These include: 1) transactions where assistance was provided to the acquirer, who purchased the entire institution. For a few FSLIC transactions, the acquirer purchased the entire bridge bank - type entity, but certain other assets were moved into a liquidating receivership prior to the sale, and 2) open bank assistance transactions, including those where assistance was provided under a systemic risk determination (in such cases any costs that exceed the amounts estimated under the least cost resolution requirement would be recovered through a special assessment on all FDIC-insured institutions).\nREP -\tReprivatization, management takeover with or without assistance at takeover, followed by a sale with or without additional assistance.\nCategory 2 - Institution's charter is terminated, insured deposits plus some assets and other liabilities are transferred to a successor charter\nP&A - Purchase and Assumption, where some or all of the deposits, certain other liabilities and a portion of the assets (sometimes all of the assets) were sold to an acquirer. It was not determined if all of the deposits (PA) or only the insured deposits (PI) were assumed.\nPA - Purchase and Assumption, where the insured and uninsured deposits, certain other liabilities and a portion of the assets were sold to an acquirer.\nPI - Purchase and Assumption of the insured deposits only, where the traditional P&A was modified so that only the insured deposits were assumed by the acquiring institution.\nIDT - Insured Deposit Transfer, where the acquiring institution served as a paying agent for the insurer, established accounts on their books for depositors, and often acquired some assets as well. Includes ABT (asset-backed transfer, a FSLIC transaction that is very similar to an IDT).\nMGR - An institution where FSLIC took over management and generally provided financial assistance. FSLIC closed down before the institution was sold.\nCategory 3\nPO - Payout, where the insurer paid the depositors directly and placed the assets in a liquidating receivership. Note: Includes transactions where the FDIC established a Deposit Insurance National Bank to facilitate the payout process.", + 'options': ['A/A', 'REP', 'P&A', 'PA', 'PI', 'IDT', 'MGR', 'PO'] + }, + 'CHCLASS1': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Charter Class', + 'description': "The FDIC assigns classification codes indicating an institution's charter type (commercial bank, savings bank, or savings association), its chartering agent (state or federal government), its Federal Reserve membership status (member or nonmember), and its primary federal regulator (state-chartered institutions are subject to both federal and state supervision). These codes are:\nN - National chartered commercial bank supervised by the Office of the Comptroller of the Currency;\nSM - State charter Fed member commercial bank supervised by the Federal Reserve;\nNM - State charter Fed nonmember commercial bank supervised by the FDIC;\nSA - State or federal charter savings association supervised by the Office of Thrift Supervision or Office of the Comptroller of the Currency;\nSB - State charter savings bank supervised by the FDIC.", + 'options': ['N', 'SM', 'NM', 'SA', 'SB'] + }, + 'RESTYPE': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Resolution', + 'description': 'The given institution has failure stature or it can be assistance has been provided by FDIC in merging with other institution.', + 'options': ['Failure', 'Assistance'] + }, + 'QBFDEP': { + 'type': 'number', + 'x-elastic-type': 'double', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Deposits', + 'description': 'Total including demand deposits, money market deposits, other savings deposits, time deposits and deposits in foreign offices as of the last Call Report or Thrift Financial Report filed by the institution prior to the effective date. Note this does not necessarily reflect total deposits on the last report filed because in some cases reports were filed after the effective date.' + }, + 'QBFASSET': { + 'type': 'number', + 'x-elastic-type': 'double', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Assets', + 'description': 'The Total assets owned by the institution including cash, loans, securities, bank premises and other assets as of the last Call Report or Thrift Financial Report filed by the institution prior to the effective date. Note this does not necessarily reflect total assets on the last report filed because in some cases reports were filed after the effective date. This total does not include off-balance-sheet accounts.' + }, + 'COST': { + 'type': 'number', + 'x-elastic-type': 'double', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Estimated Loss', + 'description': 'The estimated loss is the difference between the amount disbursed from the Deposit Insurance Fund (DIF) to cover obligations to insured depositors and the amount estimated to be ultimately recovered from the liquidation of the receivership estate. Estimated losses reflect unpaid principal amounts deemed unrecoverable and do not reflect interest that may be due on the DIF\'s administrative or subrogated claims should its principal be repaid in full.\nNotes:\nComprehensive data on estimated losses are not available for FDIC-insured failures prior to 1986, or for FSLIC-insured failures from 1934-88. Estimated loss is presented as "N/A" in years for which comprehensive information is not available.\nEstimated Loss data was previously referred to as \'Estimated Cost\' in past releases of the Historical Statistic on Banking. For RTC receiverships, the \'Estimated Cost\' included an allocation of FDIC corporate revenue and expense items such as interest expense on Federal Financing Bank debt, interest expense on escrowed funds and interest revenue on advances to receiverships. Other FDIC receiverships did not include such an allocation. To maintain consistency with FDIC receiverships, the RTC allocation is no longer reflected in the estimated loss amounts for failed / assisted institutions that were resolved through RTC receiverships.\nBeginning with the release of 2007 information, the \'Estimated Loss\' in the Historical Statistics on Banking is presented and defined consistently with the aggregate Estimated Receivership Loss for FRF-RTC institutions and Estimated Losses for FDIC receiverships that are reported in the FDIC\'s Annual Report. The estimated loss is obtained from the FDIC\'s Failed Bank Cost Analysis (FBCA) report and the RTC Loss report. The FBCA provides data for receiverships back to 1986. The RTC Loss Report provides similar data back to 1989. \nQuestions regarding Estimated Loss should be sent to DOFBusinessCenter@fdic.gov. \nAlso, for more detail regarding resolution transactions and the FDIC\'s receivership activities, see Managing the Crisis: The FDIC and RTC Experience, a historical study prepared by the FDIC\'s Division of Resolutions and Receiverships. Copies are available from the FDIC\'s Public Information Center.' + }, + 'PSTALP': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'State', + 'description': 'Two-character alphanumeric code for US state or Territory' + } +} diff --git a/bankfind/metadata/history.py b/bankfind/metadata/history.py new file mode 100644 index 0000000..698ee3f --- /dev/null +++ b/bankfind/metadata/history.py @@ -0,0 +1,2108 @@ +history_dict = { + 'TRANSNUM': { + 'type': 'number', + 'title': 'System Transaction Number', + 'description': 'System Transaction Number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'TRANSNUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'TRANSNUM' + }, { + 'file': 'UPDATE', + 'field': 'TRANSNUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'TRANSNUM' + }, { + 'file': 'PANDAS', + 'field': 'TRANSNUM' + }] + }, + 'CHANGECODE': { + 'type': 'number', + 'title': 'Activity Event Code', + 'description': 'Activity Event Code', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'CHANGECODE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CHANGECODE' + }, { + 'file': 'UPDATE', + 'field': 'CHANGECODE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CHANGECODE' + }, { + 'file': 'PANDAS', + 'field': 'CHANGECODE' + }] + }, + 'CHANGECODE_DESC': { + 'type': 'string', + 'title': 'Activity Event Code Description', + 'description': 'Activity Event Code Description', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'CHANGECODE_DESC' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CHANGECODE_DESC' + }, { + 'file': 'UPDATE', + 'field': 'CHANGECODE_DESC' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CHANGECODE_DESC' + }, { + 'file': 'PANDAS', + 'field': 'CHANGECODE_DESC' + }] + }, + 'PROCDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Process Date', + 'description': 'Activity Event Code', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'PROCDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PROCDATE' + }, { + 'file': 'UPDATE', + 'field': 'PROCDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PROCDATE' + }, { + 'file': 'PANDAS', + 'field': 'PROCDATE' + }] + }, + 'EFFDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Effective Date', + 'description': 'Effective Date', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'EFFDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'EFFDATE' + }, { + 'file': 'UPDATE', + 'field': 'EFFDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'EFFDATE' + }, { + 'file': 'PANDAS', + 'field': 'EFFDATE' + }] + }, + 'ENDDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Effective Date', + 'description': 'Effective Date', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ENDDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ENDDATE' + }, { + 'file': 'UPDATE', + 'field': 'ENDDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ENDDATE' + }, { + 'file': 'PANDAS', + 'field': 'ENDDATE' + }] + }, + 'UNINUM': { + 'type': 'number', + 'title': "FDIC's unique number", + 'description': "FDIC's unique identifier number for holding companies, banks, branches and nondeposit subsidiaries.", + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'UNINUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'UNINUM' + }, { + 'file': 'UPDATE', + 'field': 'UNINUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'UNINUM' + }, { + 'file': 'PANDAS', + 'field': 'UNINUM' + }] + }, + 'ACQ_UNINUM': { + 'type': 'number', + 'title': "FDIC's unique number of who is Acquiring", + 'description': "FDIC's unique identifier number for holding companies, banks, branches and nondeposit subsidiaries. This value maps to the main office for the acquiring Institution in a merger, acquisition, etc.", + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_UNINUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ACQ_UNINUM' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_UNINUM' + }] + }, + 'OUT_UNINUM': { + 'type': 'number', + 'title': "FDIC's unique number of who is Divesting", + 'description': "FDIC's unique identifier number for holding companies, banks, branches and nondeposit subsidiaries. This value maps to the main office for the divesting Institution in a merger, acquisition, etc.", + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_UNINUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OUT_UNINUM' + }, { + 'file': 'PANDAS', + 'field': 'OUT_UNINUM' + }] + }, + 'ORG_ROLE_CDE': { + 'type': 'string', + 'title': 'Organization Role Code', + 'description': 'Codes include FI (Financial Institution), BR (Branch), and PA', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ORG_ROLE_CDE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ORG_ROLE_CDE' + }, { + 'file': 'UPDATE', + 'field': 'ORG_ROLE_CDE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ORG_ROLE_CDE' + }, { + 'file': 'PANDAS', + 'field': 'ORG_ROLE_CDE' + }] + }, + 'REPORT_TYPE': { + 'type': 'number', + 'title': 'Report Type', + 'description': 'Type of Report', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'REPORT_TYPE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'REPORT_TYPE' + }, { + 'file': 'UPDATE', + 'field': 'REPORT_TYPE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'REPORT_TYPE' + }, { + 'file': 'PANDAS', + 'field': 'REPORT_TYPE' + }] + }, + 'CLASS': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CLASS' + }, { + 'file': 'UPDATE', + 'field': 'CLASS' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CLASS' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CLASS' + }] + }, + 'BANK_INSURED': { + 'type': 'string', + 'title': 'Bank Insurance Status', + 'description': 'Bank Insurance Status', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'BANK_INSURED' + }, { + 'file': 'UPDATE', + 'field': 'BANK_INSURED' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'BANK_INSURED' + }, { + 'file': 'PANDAS', + 'field': 'BANK_INSURED' + }] + }, + 'ACQ_CHANGECODE': { + 'type': 'number', + 'title': 'Activity Event Code', + 'description': 'Activity Event Code', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_CHANGECODE' + }] + }, + 'ACQ_ORG_EFF_DTE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Effective Date', + 'description': 'Effective Date', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_ORG_EFF_DTE' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_ORG_EFF_DTE' + }] + }, + 'ACQ_INSTNAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-elastic-normalizer': 'case_insensitive', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_INSTNAME' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_INSTNAME' + }] + }, + 'ACQ_CERT': { + 'title': 'FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'number', + 'x-source-overwrite': False, + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CERT' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CERT' + }] + }, + 'ACQ_CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CLCODE' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CLCODE' + }] + }, + 'ACQ_CHARTER': { + 'title': 'OCC Charter Number', + 'description': 'A unique number assigned by the Office of the Comptroller of the Currency (OCC) used to identify institutions that it has chartered and regulates (i.e. national banks).', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CHARTER' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CHARTER' + }] + }, + 'ACQ_CHARTAGENT': { + 'title': 'Acquiring Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CHARTAGENT' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CHARTAGENT' + }] + }, + 'ACQ_FDICREGION': { + 'title': 'Supervisory Region Number', + 'description': 'A numeric value associated with the name of an FDIC supervisory region', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_FDICREGION' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_FDICREGION' + }] + }, + 'ACQ_FDICREGION_DESC': { + 'title': 'Supervisory Region Description', + 'description': 'A description associated with the name of an FDIC supervisory region', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_FDICREGION_DESC' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_FDICREGION_DESC' + }] + }, + 'ACQ_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_PADDR' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_PADDR' + }] + }, + 'ACQ_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_PCITY' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_PCITY' + }] + }, + 'ACQ_PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_PSTALP' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_PSTALP' + }] + }, + 'ACQ_PZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_PZIP5_RAW' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_PZIP5_RAW' + }] + }, + 'ACQ_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_PZIPREST' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_PZIPREST' + }] + }, + 'ACQ_MADDR': { + 'type': 'string', + 'title': 'Mailing Street Address', + 'description': 'Street address at which the institution or one of its branches receives mail.', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MADDR' + }] + }, + 'ACQ_MCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MCITY' + }] + }, + 'ACQ_MSTATE': { + 'title': 'Mailing State', + 'description': 'Mailing State', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MSTATE' + }] + }, + 'ACQ_MSTALP': { + 'title': 'Mailing State Abbbreviation', + 'description': 'Mailing State Abbbreviation', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MSTALP' + }] + }, + 'ACQ_MZIP5': { + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MZIP5_RAW' + }] + }, + 'ACQ_MZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'ACQ_MZIPREST' + }] + }, + 'ACQ_CLASS': { + 'type': 'string', + 'title': 'TBD', + 'description': 'TBD', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CLASS' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CLASS' + }] + }, + 'ACQ_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CNTYNAME' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CNTYNAME' + }] + }, + 'ACQ_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_CNTYNUM' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_CNTYNUM' + }] + }, + 'ACQ_INSAGENT1': { + 'title': 'Insurance Fund Membership', + 'description': 'Deposit Insurance Fund (DIF), Bank Insurance Fund (BIF), Savings Association Insurance Fund (SAIF)', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_INSAGENT1' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_INSAGENT1' + }] + }, + 'ACQ_INSAGENT2': { + 'title': 'Secondary Insurance Fund', + 'description': 'As a result of the establishment of a single Deposit Insurance Fund (DIF) effective April 1, 2006, the Secondary Insurance fund is no longer applicable. previously both bif and saif bank insurance fund - institutions that are members of the bank insurance fund savings association insurance fund - Institutions that are members of the Savings Association Insurance Fund', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_INSAGENT2' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_INSAGENT2' + }] + }, + 'ACQ_REGAGENT': { + 'title': 'Acquiring Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF).', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_REGAGENT' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_REGAGENT' + }] + }, + 'ACQ_TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_TRUST' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_TRUST' + }] + }, + 'ACQ_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Surviving Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_LATITUDE' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_LATITUDE' + }] + }, + 'ACQ_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Surviving Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'ACQ_LONGITUDE' + }, { + 'file': 'PANDAS', + 'field': 'ACQ_LONGITUDE' + }] + }, + 'OUT_INSTNAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-elastic-normalizer': 'case_insensitive', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_INSTNAME' + }, { + 'file': 'PANDAS', + 'field': 'OUT_INSTNAME' + }] + }, + 'OUT_CERT': { + 'title': 'FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'number', + 'x-source-overwrite': False, + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CERT' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CERT' + }] + }, + 'OUT_CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CLCODE' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CLCODE' + }] + }, + 'OUT_CHARTER': { + 'title': 'OCC Charter Number', + 'description': 'A unique number assigned by the Office of the Comptroller of the Currency (OCC) used to identify institutions that it has chartered and regulates (i.e. national banks).', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CHARTER' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CHARTER' + }] + }, + 'OUT_CHARTAGENT': { + 'title': 'Outgoing Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CHARTAGENT' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CHARTAGENT' + }] + }, + 'OUT_FDICREGION': { + 'title': 'Supervisory Region Number', + 'description': 'A numeric value associated with the name of an FDIC supervisory region', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_FDICREGION' + }, { + 'file': 'PANDAS', + 'field': 'OUT_FDICREGION' + }] + }, + 'OUT_FDICREGION_DESC': { + 'title': 'Supervisory Region Description', + 'description': 'A description associated with the name of an FDIC supervisory region', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_FDICREGION_DESC' + }, { + 'file': 'PANDAS', + 'field': 'OUT_FDICREGION_DESC' + }] + }, + 'OUT_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_PADDR' + }, { + 'file': 'PANDAS', + 'field': 'OUT_PADDR' + }] + }, + 'OUT_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_PCITY' + }, { + 'file': 'PANDAS', + 'field': 'OUT_PCITY' + }] + }, + 'OUT_PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_PSTALP' + }, { + 'file': 'PANDAS', + 'field': 'OUT_PSTALP' + }] + }, + 'OUT_PZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_PZIP5_RAW' + }, { + 'file': 'PANDAS', + 'field': 'OUT_PZIP5' + }] + }, + 'OUT_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_PZIPREST' + }, { + 'file': 'PANDAS', + 'field': 'OUT_PZIPREST' + }] + }, + 'OUT_MADDR': { + 'type': 'string', + 'title': 'Mailing Street Address', + 'description': 'Street address at which the institution or one of its branches receives mail.', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MADDR' + }] + }, + 'OUT_MCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MCITY' + }] + }, + 'OUT_MSTATE': { + 'title': 'Mailing State', + 'description': 'Mailing State', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MSTATE' + }] + }, + 'OUT_MSTALP': { + 'title': 'Mailing State Abbbreviation', + 'description': 'Mailing State Abbbreviation', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MSTALP' + }] + }, + 'OUT_MZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MZIP5_RAW' + }] + }, + 'OUT_MZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'PANDAS', + 'field': 'OUT_MZIPREST' + }] + }, + 'OUT_CLASS': { + 'type': 'string', + 'title': 'TBD', + 'description': 'TBD', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CLASS' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CLASS' + }] + }, + 'OUT_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CNTYNAME' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CNTYNAME' + }] + }, + 'OUT_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_CNTYNUM' + }, { + 'file': 'PANDAS', + 'field': 'OUT_CNTYNUM' + }] + }, + 'OUT_INSAGENT1': { + 'title': 'Insurance Fund Membership', + 'description': 'Deposit Insurance Fund (DIF), Bank Insurance Fund (BIF), Savings Association Insurance Fund (SAIF)', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_INSAGENT1' + }, { + 'file': 'PANDAS', + 'field': 'OUT_INSAGENT1' + }] + }, + 'OUT_INSAGENT2': { + 'title': 'Secondary Insurance Fund', + 'description': 'As a result of the establishment of a single Deposit Insurance Fund (DIF) effective April 1, 2006, the Secondary Insurance fund is no longer applicable. previously both bif and saif bank insurance fund - institutions that are members of the bank insurance fund savings association insurance fund - Institutions that are members of the Savings Association Insurance Fund', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_INSAGENT2' + }, { + 'file': 'PANDAS', + 'field': 'OUT_INSAGENT2' + }] + }, + 'OUT_REGAGENT': { + 'title': 'Outgoing Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF).', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_REGAGENT' + }, { + 'file': 'PANDAS', + 'field': 'OUT_REGAGENT' + }] + }, + 'OUT_TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_TRUST' + }, { + 'file': 'PANDAS', + 'field': 'OUT_TRUST' + }] + }, + 'OUT_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_LATITUDE' + }, { + 'file': 'PANDAS', + 'field': 'OUT_LATITUDE' + }] + }, + 'OUT_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_OUT', + 'field': 'OUT_LONGITUDE' + }, { + 'file': 'PANDAS', + 'field': 'OUT_LONGITUDE' + }] + }, + 'SUR_CHANGECODE': { + 'type': 'number', + 'title': 'Activity Event Code', + 'description': 'Activity Event Code', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CHANGECODE' + }] + }, + 'SUR_INSTNAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-elastic-normalizer': 'case_insensitive', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_INSTNAME' + }] + }, + 'SUR_CERT': { + 'title': 'FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'number', + 'x-source-overwrite': False, + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CERT' + }] + }, + 'SUR_CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CLCODE' + }] + }, + 'SUR_CHARTER': { + 'title': 'OCC Charter Number', + 'description': 'A unique number assigned by the Office of the Comptroller of the Currency (OCC) used to identify institutions that it has chartered and regulates (i.e. national banks).', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CHARTER' + }] + }, + 'SUR_CHARTAGENT': { + 'title': 'Surviving Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CHARTAGENT' + }] + }, + 'SUR_FDICREGION': { + 'title': 'Supervisory Region Number', + 'description': 'A numeric value associated with the name of an FDIC supervisory region', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_FDICREGION' + }] + }, + 'SUR_FDICREGION_DESC': { + 'title': 'Supervisory Region Description', + 'description': 'A description associated with the name of an FDIC supervisory region', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_FDICREGION_DESC' + }] + }, + 'SUR_MADDR': { + 'type': 'string', + 'title': 'Mailing Street Address', + 'description': 'Street address at which the institution or one of its branches receives mail.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_MADDR' + }] + }, + 'SUR_MCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_MCITY' + }] + }, + 'SUR_MSTATE': { + 'title': 'Mailing State', + 'description': 'Mailing State', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_MSTATE' + }] + }, + 'SUR_MSTALP': { + 'title': 'Mailing State Abbreviation', + 'description': 'Mailing State Abbreviation', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_MSTALP' + }] + }, + 'SUR_MZIP5': { + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_MZIP5_RAW' + }] + }, + 'SUR_PZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_PZIP5_RAW' + }] + }, + 'SUR_CLASS': { + 'type': 'string', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CLASS' + }] + }, + 'SUR_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CNTYNAME' + }] + }, + 'SUR_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_CNTYNUM' + }] + }, + 'SUR_INSAGENT1': { + 'title': 'Insurance Fund Membership', + 'description': 'Deposit Insurance Fund (DIF), Bank Insurance Fund (BIF), Savings Association Insurance Fund (SAIF)', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_INSAGENT1' + }] + }, + 'SUR_INSAGENT2': { + 'title': 'Secondary Insurance Fund', + 'description': 'As a result of the establishment of a single Deposit Insurance Fund (DIF) effective April 1, 2006, the Secondary Insurance fund is no longer applicable. previously both bif and saif bank insurance fund - institutions that are members of the bank insurance fund savings association insurance fund - Institutions that are members of the Savings Association Insurance Fund', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_INSAGENT2' + }] + }, + 'SUR_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_PADDR' + }] + }, + 'SUR_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_PCITY' + }] + }, + 'SUR_PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_PSTALP' + }] + }, + 'SUR_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_PZIPREST' + }] + }, + 'SUR_REGAGENT': { + 'title': 'Surviving Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_REGAGENT' + }] + }, + 'SUR_TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_TRUST' + }] + }, + 'SUR_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Surviving Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_LATITUDE' + }] + }, + 'SUR_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Surviving Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'MERGER_ACQ', + 'field': 'SUR_LONGITUDE' + }] + }, + 'FRM_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CNTYNUM' + }] + }, + 'FRM_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_PCITY' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_PCITY' + }] + }, + 'FRM_REGAGENT': { + 'title': 'From Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF).', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_REGAGENT' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_REGAGENT' + }] + }, + 'FRM_PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_PSTALP' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_PSTALP' + }] + }, + 'FRM_TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_TRUST' + }] + }, + 'FRM_CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CLCODE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_CLCODE' + }] + }, + 'FRM_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_PADDR' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_PADDR' + }] + }, + 'FRM_CHARTAGENT': { + 'title': 'From/Before Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CHARTAGENT' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_CHARTAGENT' + }] + }, + 'FRM_CLASS': { + 'type': 'string', + 'title': 'TBD', + 'description': 'TBD', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CLASS' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_CLASS' + }] + }, + 'FRM_PZIP5': { + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_PZIP5_RAW' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_PZIP5_RAW' + }] + }, + 'FRM_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_PZIPREST' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_PZIPREST' + }] + }, + 'FRM_INSTNAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-elastic-normalizer': 'case_insensitive', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_INSTNAME' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_INSTNAME' + }] + }, + 'FRM_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CNTYNAME' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_CNTYNAME' + }] + }, + 'FRM_CERT': { + 'title': 'Previous FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'number', + 'x-source-overwrite': False, + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FRM_CERT' + }] + }, + 'FRM_OFF_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_CNTYNAME' + }] + }, + 'FRM_OFF_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_CNTYNUM' + }] + }, + 'FRM_OFF_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_PADDR' + }] + }, + 'FRM_OFF_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_PCITY' + }] + }, + 'FRM_OFF_PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_PSTALP' + }] + }, + 'FRM_OFF_PZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_PZIP5_RAW' + }] + }, + 'FRM_OFF_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_PZIPREST' + }] + }, + 'FRM_OFF_SERVTYPE': { + 'type': 'number', + 'title': 'Service Type', + 'description': 'Service Type', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_SERVTYPE' + }] + }, + 'FRM_OFF_SERVTYPE_DESC': { + 'type': 'string', + 'title': 'Service Type Description', + 'description': 'Service Type Description', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_SERVTYPE_DESC' + }] + }, + 'FRM_OFF_STATE': { + 'type': 'string', + 'title': 'Office State', + 'description': 'Office State', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_STATE' + }] + }, + 'FRM_OFF_NAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Office Name', + 'description': 'Name of the branch.', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_NAME' + }] + }, + 'FRM_OFF_NUM': { + 'type': 'string', + 'title': 'Branch Number', + 'description': "The branch's corresponding office number.", + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_NUM' + }] + }, + 'FRM_OFF_TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_TRUST' + }] + }, + 'FRM_OFF_CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_CLCODE' + }] + }, + 'FRM_OFF_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_LATITUDE' + }] + }, + 'FRM_OFF_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_OFF_LONGITUDE' + }] + }, + 'FRM_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_LATITUDE' + }, { + 'file': 'MERGER_ACQ', + 'field': 'FRM_LATITUDE' + }, { + 'file': 'MERGER_OUT', + 'field': 'FRM_LATITUDE' + }, { + 'file': 'PANDAS', + 'field': 'FRM_LATITUDE' + }] + }, + 'FRM_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'FRM_LONGITUDE' + }, { + 'file': 'MERGER_ACQ', + 'field': 'FRM_LONGITUDE' + }, { + 'file': 'MERGER_OUT', + 'field': 'FRM_LONGITUDE' + }, { + 'file': 'PANDAS', + 'field': 'FRM_LONGITUDE' + }] + }, + 'CERT': { + 'title': 'FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'number', + 'x-source-overwrite': False, + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'CERT' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CERT' + }] + }, + 'INSTNAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-elastic-normalizer': 'case_insensitive', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'INSTNAME' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'INSTNAME' + }] + }, + 'CHARTAGENT': { + 'title': 'Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'CHARTAGENT' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CHARTAGENT' + }] + }, + 'CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'CLCODE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CLCODE' + }] + }, + 'FDICREGION': { + 'title': 'Supervisory Region Number', + 'description': 'A numeric value associated with the name of an FDIC supervisory region', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FDICREGION' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FDICREGION' + }] + }, + 'FDICREGION_DESC': { + 'title': 'Supervisory Region Description', + 'description': 'A description associated with the name of an FDIC supervisory region', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FDICREGION_DESC' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FDICREGION_DESC' + }] + }, + 'CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'CNTYNAME' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CNTYNAME' + }] + }, + 'CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'CNTYNUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'CNTYNUM' + }] + }, + 'INSAGENT1': { + 'title': 'Insurance Fund Membership', + 'description': 'Deposit Insurance Fund (DIF), Bank Insurance Fund (BIF), Savings Association Insurance Fund (SAIF)', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'INSAGENT1' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'INSAGENT1' + }] + }, + 'INSAGENT2': { + 'title': 'Secondary Insurance Fund', + 'description': 'As a result of the establishment of a single Deposit Insurance Fund (DIF) effective April 1, 2006, the Secondary Insurance fund is no longer applicable. previously both bif and saif bank insurance fund - institutions that are members of the bank insurance fund savings association insurance fund - Institutions that are members of the Savings Association Insurance Fund', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'INSAGENT2' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'INSAGENT2' + }] + }, + 'MADDR': { + 'type': 'string', + 'title': 'Mailing Street Address', + 'description': 'Street address at which the institution or one of its branches receives mail.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MADDR' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MADDR' + }] + }, + 'MCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MCITY' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MCITY' + }] + }, + 'MSTATE': { + 'title': 'Mailing State', + 'description': 'Mailing State', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MSTATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MSTATE' + }] + }, + 'MSTALP': { + 'title': 'Mailing State', + 'description': 'Mailing State', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MSTALP' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MSTALP' + }] + }, + 'MZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MZIP5_RAW' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MZIP5_RAW' + }] + }, + 'MZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'MZIPREST' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'MZIPREST' + }] + }, + 'PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'PADDR' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PADDR' + }] + }, + 'PZIP5': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'PZIP5_RAW' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PZIP5_RAW' + }] + }, + 'PSTALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'PSTALP' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PSTALP' + }] + }, + 'PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'PZIPREST' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PZIPREST' + }] + }, + 'PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'PCITY' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'PCITY' + }] + }, + 'STATE': { + 'type': 'string', + 'title': 'Physical State', + 'description': 'State in which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'STATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'STATE' + }] + }, + 'TRUST': { + 'title': 'Trust Power', + 'description': 'Trust Power', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'TRUST' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'TRUST' + }] + }, + 'REGAGENT': { + 'title': 'Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF).', + 'type': 'string', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'REGAGENT' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'REGAGENT' + }] + }, + 'SERVTYPE': { + 'type': 'number', + 'title': 'Service Type', + 'description': 'Service Type', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'SERVTYPE' + }] + }, + 'SERVTYPE_DESC': { + 'type': 'string', + 'title': 'Service Type Description', + 'description': 'Service Type Description', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'SERVTYPE_DESC' + }] + }, + 'OFF_CNTYNAME': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_CNTYNAME' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_CNTYNAME' + }, { + 'file': 'PANDAS', + 'field': 'OFF_CNTYNAME' + }] + }, + 'OFF_NUM': { + 'type': 'number', + 'title': 'Branch Number', + 'description': "The branch's corresponding office number.", + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_NUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_NUM' + }, { + 'file': 'PANDAS', + 'field': 'OFF_NUM' + }] + }, + 'OFF_CNTYNUM': { + 'type': 'number', + 'title': 'TBD', + 'description': 'TBD', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_CNTYNUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_CNTYNUM' + }, { + 'file': 'PANDAS', + 'field': 'OFF_CNTYNUM' + }] + }, + 'OFF_PADDR': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_PADDR' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PADDR' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PADDR' + }] + }, + 'OFF_PSTATE': { + 'type': 'string', + 'title': 'Office State', + 'description': 'Office State', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_PSTATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PSTATE' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PSTATE' + }] + }, + 'OFF_PZIP5': { + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_PZIP5' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PZIP5' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PZIP5' + }] + }, + 'OFF_PZIPREST': { + 'type': 'string', + 'title': 'Zip Code Extension', + 'description': 'Zip Code Extension', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'OFF_PZIPREST' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PZIPREST' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PZIPREST' + }] + }, + 'OFF_NAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Office name', + 'description': 'The legal name of the office.', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_NAME' + }, { + 'file': 'PANDAS', + 'field': 'OFF_NAME' + }] + }, + 'OFF_PSTALP': { + 'type': 'string', + 'title': 'State', + 'description': 'State in which the institution or one of its branches is physically located.', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PSTALP' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PSTALP' + }] + }, + 'OFF_PCITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_PCITY' + }, { + 'file': 'PANDAS', + 'field': 'OFF_PCITY' + }] + }, + 'OFF_SERVTYPE': { + 'type': 'number', + 'title': 'Service Type', + 'description': 'Service Type', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_SERVTYPE' + }, { + 'file': 'PANDAS', + 'field': 'OFF_SERVTYPE' + }] + }, + 'OFF_LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_LATITUDE' + }, { + 'file': 'PANDAS', + 'field': 'OFF_LATITUDE' + }] + }, + 'OFF_LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_LONGITUDE' + }, { + 'file': 'PANDAS', + 'field': 'OFF_LONGITUDE' + }] + }, + 'OFF_SERVTYPE_DESC': { + 'type': 'string', + 'title': 'Service Type Description', + 'description': 'Service Type Description', + 'x-elastic-type': 'keyword', + 'x-source-mapping': [{ + 'file': 'UPDATE_BRANCHES', + 'field': 'OFF_SERVTYPE_DESC' + }, { + 'file': 'PANDAS', + 'field': 'OFF_SERVTYPE_DESC' + }] + }, + 'ESTDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Office Established Date', + 'description': 'Office Established Date', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'ESTDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ESTDATE' + }, { + 'file': 'PANDAS', + 'field': 'ESTDATE' + }] + }, + 'ACQDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Office Acquired Date', + 'description': 'Office Acquired Date', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'ACQDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ACQDATE' + }, { + 'file': 'PANDAS', + 'field': 'ACQDATE' + }] + }, + 'FI_EFFDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Financial Institution Effective Date', + 'description': 'Financial Institution Effective Date', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FI_EFFDATE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FI_EFFDATE' + }] + }, + 'FI_UNINUM': { + 'type': 'number', + 'title': "FDIC's unique number", + 'description': "FDIC's unique identifier number for holding companies, banks, branches and nondeposit subsidiaries.", + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'FI_UNINUM' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'FI_UNINUM' + }] + }, + 'ORG_STAT_FLG': { + 'type': 'string', + 'title': 'Organization Status Flag', + 'description': 'Organization Status Flag', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'ORG_STAT_FLG' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'ORG_STAT_FLG' + }, { + 'file': 'PANDAS', + 'field': 'ORG_STAT_FLG' + }, { + 'file': 'MERGER_ACQ', + 'field': 'ORG_STAT_FLG' + }, { + 'file': 'MERGER_OUT', + 'field': 'ORG_STAT_FLG' + }] + }, + 'LATITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'LATITUDE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'LATITUDE' + }] + }, + 'LONGITUDE': { + 'type': 'number', + 'title': 'Location Address Latitude', + 'description': 'Location Address Latitude', + 'x-source-mapping': [{ + 'file': 'UPDATE', + 'field': 'LONGITUDE' + }, { + 'file': 'UPDATE_BRANCHES', + 'field': 'LONGITUDE' + }] + } +} diff --git a/bankfind/metadata/institution.py b/bankfind/metadata/institution.py new file mode 100644 index 0000000..bec87e1 --- /dev/null +++ b/bankfind/metadata/institution.py @@ -0,0 +1,1468 @@ +institution_dict = { + 'ACTIVE': { + 'type': 'string', + 'title': 'inactive', + 'description': 'Institutions that are currently open and insured by the FDIC', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.INST_FIN_ACTV_FLG?.toLowerCase() == "y") { \n ctx.ACTIVE = 1; \n} else { \n ctx.ACTIVE = 0;\n}\n' + } + } + }], + }, + 'ADDRESS': { + 'type': 'string', + 'title': 'Physical Street Address', + 'description': 'Street address at which the institution or one of its branches is physically located.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_LNE1_TXT' + }] + }, + 'ASSET': { + 'type': 'number', + 'title': 'Total assets', + 'description': 'The sum of all assets owned by the institution including cash, loans, securities, bank premises and other assets. This total does not include off-balance-sheet accounts.', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ASSET' + }] + }, + 'BKCLASS': { + 'title': 'Bank Charter Class', + 'options': ['N', 'SM', 'NM', 'SB', 'SA', 'OI'], + 'description': "A classification code assigned by the FDIC based on the institution's charter type (commercial bank or savings institution), charter agent (state or federal), Federal Reserve membership status (Fed member, Fed nonmember)and its primary federal regulator (state chartered institutions are subject to both federal and state supervision). N = commercial bank, national (federal) charter and Fed member, supervised by the Office of the Comptroller of the Currency (OCC) SM = commercial bank, state charter and Fed member, supervised by the Federal Reserve (FRB) NM = commercial bank, state charter and Fed nonmember, supervised by the FDIC SB = savings banks, state charter, supervised by the FDIC SA = savings associations, state or federal charter, supervised by the Office of Thrift Supervision (OTS) OI = insured U.S. branch of a foreign chartered institution (IBA)", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.INST_CLASS_CDE?.toLowerCase() == "sb" || ctx.INST_CLASS_CDE?.toLowerCase() == "sl") { \n ctx.BKCLASS = \'SA\'; \n} else if (ctx.INST_CLASS_CDE?.toLowerCase() == "mi" || ctx.INST_CLASS_CDE?.toLowerCase() == "si") { \n ctx.BKCLASS = \'SB\';\n} else {\n ctx.BKCLASS = ctx.INST_CLASS_CDE;\n}\n' + } + } + }] + }, + 'CB': { + 'title': 'Community Bank', + 'description': 'FDIC community banks are identified based on criteria defined in the FDIC Community Banking Study. Using detailed balance sheet and geographic data, the study defines communtiy banks in terms of their traditional relationship banking and limited geographic scope of operations', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'CB' + }] + }, + 'CBSA': { + 'title': 'Name of the Core Based Statistical Area', + 'description': 'The name associated with the numeric code that the U.S. Census Bureau Office of Management and Budget assigns for the CBSA. The 2000 standards provide that each CBSA must contain at least one urban area of 10,000 or more population. Metropolitan and micropolitan statistical areas are two categories of core based statistical areas. If an institution is not defined as a CBSA, the value of the field will be zero. For more information see: http://www.census.gov/population/www/estimates/metroarea.html . ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSANAME' + }] + }, + 'CBSA_DIV': { + 'title': 'Name of the Core Based Statistical Division', + 'description': 'The name associated with the numeric code given by the US Census Bureau office of Management and Budget (2000 standards) that represents the core based statistical division (CBSADIV). A metropolitan division is a county or group of counties within a core based statistical area that contains a core with a population of at least 2.5 million. A CBSA metropolitan division consists of one or more main/secondary counties that represent an employment center or centers, plus adjacent counties associated with the main county or counties through commuting ties. If an institution is not defined as a CBSA division the value of the field will be zero.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA_DIV_NAME' + }] + }, + 'CBSA_DIV_FLG': { + 'title': 'CBSA Statistical Area Flag', + 'description': 'A flag used to indicate whether an institution is in a CBSA division 1=yes, 0=no', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'DIVISION_FLAG' + }] + }, + 'CBSA_DIV_NO': { + 'title': 'Core Based Statistical Division Number', + 'description': 'The numeric code given by the US Census Bureau office of Management and Budget that represents the core based statistical division (CBSADIV)under the year 2000 standards. A metropolitan division is a county or group of counties within a core based statistical area that contains a core with a population of at least 2.5 million. A CBSA metropolitan division consists of one or more main/secondary counties that represent an employment center or centers, plus adjacent counties associated with the main county or counties through commuting ties. If an institution is not defined as a CBSA division the value of the field will be zero. ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA_DIVISION' + }] + }, + 'CBSA_METRO': { + 'title': 'CBSA Metro Code', + 'description': "Numeric code assigned by the U.S. Census Bureau's Office of Management and Budget for a metropolitan area within a CBSA", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.CBSA_METRO_FLG == "1") {\n ctx.CBSA_METRO = ctx.CBSA_NO;\n} else {\n ctx.CBSA_METRO = 0;\n}\n' + } + } + }] + }, + 'CBSA_METRO_FLG': { + 'title': 'Metro Statistical Area Flag', + 'description': 'A flag used to indicate whether an institution is in a metropolitan statistical area.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'METRO_FLAG' + }], + 'options': [0, 1] + }, + 'CBSA_METRO_NAME': { + 'title': 'CBSA Metro Name', + 'description': "Name associated with the numeric code that the U.S. Census Bureau's Office of Management and Budget assigns for the metropolitan areas within a CBSA; are now also the basis for Metropolitan Statistical Areas (MSAs)", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.CBSA_METRO_FLG == "1") {\n ctx.CBSA_METRO_NAME = ctx.CBSA;\n} else {\n ctx.CBSA_METRO_NAME = 0;\n}\n' + } + } + }] + }, + 'CBSA_MICRO_FLG': { + 'title': 'Micro Statistical Area Flag', + 'description': 'A flag used to indicate whether an institution is in a micropolitan statistical area', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'MICRO_FLAG' + }], + 'options': [0, 1] + }, + 'CBSA_NO': { + 'title': 'Numeric Code for the Core Based Statistical Area', + 'description': 'The numeric code that the U.S. Census Bureaus Office of Management and Budget assigns for the CBSA. The 2000 standards provide that each CBSA must contain at least one urban area of 10,000 or more population. Metropolitan and micropolitan statistical areas are two categories of core based statistical areas. If an institution is not defined as a CBSA, the value of the field will be zero. For more information see: http://www.census.gov/population/www/estimates/metroarea.html . ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA' + }] + }, + 'CERT': { + 'title': 'FDIC Certificate #', + 'description': 'A unique NUMBER assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_CERT_NUM' + }] + }, + 'CERTCONS': { + 'title': 'Directly owned by another bank (CERT)', + 'description': 'FDIC certificate number of the parent bank or savings institution with which the reported institution’s financial data has been consolidated. Beginning in March 1997, both the Thrift Financial Reports and Call Reports are completed on a fully consolidated basis. Previously, the consolidation of subsidiary depository institutions was prohibited. Now, parent institutions are required to file consolidated reports, while their subsidiary financial institutions are still required to file separate reports. Click on the certificate number to identify the parent bank or thrift.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'CERTCONS' + }] + }, + 'CFPBEFFDTE': { + 'title': 'CFPB Effective Date', + 'description': 'Date the institution began secondary supervision by CFPB', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'dd-MMM-yyyy', + 'inputField': 'AGY_CFPB_REGL_EFF_DTE', + 'outputField': 'CFPBEFFDTE' + } + } + }] + }, + 'CFPBENDDTE': { + 'title': 'CFPB End Date', + 'description': 'Date the institution ended supervision by CFPB', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'dd-MMM-yyyy', + 'inputField': 'AGY_CFPB_REGL_END_DTE', + 'outputField': 'CFPBENDDTE' + } + } + }] + }, + 'CFPBFLAG': { + 'title': 'CFPB Flag', + 'description': "Indicates secondary supervision by CFPB ('0' - not supervised by CFPB, '1'- secondarily supervised by CFPB)", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.REGAGENT2?.toLowerCase() == "cfpb" && ctx.CFPBENDDTE?.toString() == "31-Dec-99") { \n ctx.CFPBFLAG = 1; \n} else { \n ctx.CFPBFLAG = 0 \n}\n' + } + } + }], + 'options': [0, 1] + }, + 'CHANGEC1': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution. Structure codes are as follows:', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.EVENTS !== null ) { \n\n List changeCodeList = new ArrayList();\n String[] codeList = new String[] {"1", "110", "150", "211", "212", "213", "215", "216", "217", "221", "222", "223", "225", "230", "231", "235", "240", "350", "360", "410", "411", "430", "440", "470", "510", "520", "610", "810", "811", "812", "820", "830"};\n List includeCodeList = Arrays.asList(codeList);\n\n \n for (int i = 0; i < ctx.EVENTS.length; ++i) {\n if (ctx.EVENTS[i].EFFDATE == ctx.ORG_EFF_NUM_DTE && \n ctx.EVENTS[i].ENDEFYMD == ctx.ORG_END_NUM_DTE &&\n includeCodeList.contains(Integer.toString(ctx.EVENTS[i].ACT_EVT_NUM))) {\n\n ctx.EVENTS[i].CHANGE_ORDER = 3;\n if (ctx.EVENTS[i].ACT_EVT_NUM !== null) {\n if(ctx.EVENTS[i]?.ACT_EVT_NUM > 200 && ctx.EVENTS[i]?.ACT_EVT_NUM <= 299) {\n ctx.EVENTS[i].CHANGE_ORDER = 1;\n } else if(ctx.EVENTS[i]?.ACT_EVT_NUM > 800 && ctx.EVENTS[i]?.ACT_EVT_NUM <= 899) {\n ctx.EVENTS[i].CHANGE_ORDER = 2;\n }\n }\n\n changeCodeList.add(ctx.EVENTS[i])\n }\n }\n\n changeCodeList.sort((x,y) -> {\n int change = x.CHANGE_ORDER.compareTo(y.CHANGE_ORDER);\n if (change === 0) { change = y.PROCDATE.compareTo(x.PROCDATE); }\n if (change === 0) { change = y.ACT_EVT_NUM.compareTo(x.ACT_EVT_NUM); }\n return change;\n });\n \n ctx.PARSED_EVENTS = changeCodeList;\n\n for (int a = 0; a < ctx.PARSED_EVENTS.length; ++a) {\n String changeCodeProperty = "CHANGEC" + (a+1);\n ctx[changeCodeProperty] = ctx.PARSED_EVENTS[a].ACT_EVT_NUM\n }\n}\n' + } + } + }] + }, + 'CHANGEC2': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT2_NUM' + }] + }, + 'CHANGEC3': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT3_NUM' + }] + }, + 'CHANGEC4': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT4_NUM' + }] + }, + 'CHANGEC5': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC6': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC7': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC8': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC9': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC10': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC11': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC12': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC13': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC14': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHANGEC15': { + 'title': 'Change Code', + 'description': 'FDIC code used to signify a structural event relating to an institution (see CHANGECODE for the key to the codes).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_BR_SDC', + 'field': 'ACT_EVT5_NUM' + }] + }, + 'CHARTER': { + 'title': 'OCC Charter Number', + 'description': 'A unique number assigned by the Office of the Comptroller of the Currency (OCC) used to identify institutions that it has chartered and regulates (i.e. national banks).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_OCC_CHTR_NUM' + }] + }, + 'CHRTAGNT': { + 'title': 'Chartering Agency', + 'description': 'All Chartering Agencies - State and Federal Comptroller of the Currency - Chartering authority for nationally chartered commercial banks and for federally chartered savings associations (The Office of Thrift Supervision (OTS) before 7/21/11) State (includes U.S. Territories) - Chartering authority for institutions that are not chartered by the OCC or OTS', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'AGY_CHTR_CDE' + }] + }, + 'CITY': { + 'title': 'City', + 'description': "City in which an institution's headquarters or one of its branches is physically located. Either the entire name or part of the name of a specific city may be entered to produce an Institution List.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_CTY_NME' + }] + }, + 'CITYHCR': { + 'title': 'City of High Holder', + 'description': "City in which the headquarters of the institution's regulatory high holder are physically located.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'CITYHCR' + }] + }, + 'CLCODE': { + 'title': 'Numeric code', + 'description': 'Numeric code which identifies the major and minor categories of an institution.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_CAT_NUM' + }] + }, + 'CMSA_NO': { + 'title': 'Consolidated Metropolitan Statistical Division Number', + 'description': 'The numeric code given by the US Census Bureau office of Management and Budget that represents the CMSA prior to the year 2000 standards. 1=yes', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_CMSA_NUM' + }] + }, + 'CMSA': { + 'title': 'Consolidated Metropolitan Statistical Area', + 'description': 'The Federal Information Processing Standards (FIPS) Consolidated Metropolitan Statistical Area (CMSA) code is a number representing the institution location. CMSA consists of two or more contiguous Metropolitan Statistical Areas (MSA) with a combined population of over 1 Million. Note: If an institution is not located in a CMSA, the value of the field will be zeroes.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_CMSA_NME' + }] + }, + 'CONSERVE': { + 'title': 'Conservatorship', + 'description': 'A flag (1=yes;0=no) that indicates if an institution is being operated in government conservatorship.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_FIN_CNS_FLG' + }] + }, + 'COUNTY': { + 'title': 'County', + 'description': 'County where the institution is physically located (abbreviated if the county name exceeds 16 characters).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_CNTY_NME' + }] + }, + 'CSA': { + 'title': 'Name of the Combined Statistical Area', + 'description': 'The name associated with the numeric code that the U.S. Census Bureau Office of Management and Budget assigns for the combined statistical area (CSA) per the 2000 standards. If an institution is not defined as a CSA, the value of the field will be blank. For more information see: http://www.census.gov/population/www/estimates/metroarea.html . ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSANAME' + }] + }, + 'CSA_NO': { + 'title': 'Numeric Code for the Combined Statistical Area', + 'description': 'The numeric code that the U.S. Census Bureau Office of Management and Budget assigns for the combined statistical area (CSA) per the 2000 standards. If an institution is not defined as a CSA, the value of the field will be zero. For more information see: http://www.census.gov/population/www/estimates/metroarea.html .', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSA' + }] + }, + 'CSA_FLG': { + 'title': 'CSA Area Flag', + 'description': 'A flag used to indicate whether an institution is in a Combined Statistical Area. 1=yes and 0=no.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSA_FLAG' + }], + 'options': [0, 1] + }, + 'DATEUPDT': { + 'title': 'Last update', + 'description': 'The date of the last data update.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'see PROCDATE script', + 'field': 'see PROCDATE script' + }] + }, + 'DENOVO': { + 'title': 'Denovo Institution', + 'description': 'A flag used to indicate whether an institution is a new institution (not a recharter). This flag is set quarterly. For instance, if REPDTE is 3/31/98 and DENOVO equals 1, the institution was a denovo during the first quarter of 1998.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'DENOVO' + }] + }, + 'DEP': { + 'title': 'Total deposits', + 'description': 'The sum of all deposits including demand deposits, money market deposits, other savings deposits, time deposits and deposits in foreign offices.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'DEP' + }] + }, + 'DEPDOM': { + 'title': 'Deposits held in domestic offices', + 'description': 'The sum of all domestic office deposits, including demand deposits, money market deposits, other savings deposits and time deposits.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'DEPDOM' + }] + }, + 'DOCKET': { + 'title': 'OTS Docket Number', + 'description': "An identification number assigned to institutions chartered by the office of thrift supervision or members of the federal housing finance board (FHFB) and formerly by the federal home loan bank board. The value is '00000' for institutions not members of the FHFB.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_DKT_NUM' + }] + }, + 'EFFDATE': { + 'title': 'Last Structure Change Effective Date', + 'description': 'Effective Start Date of the data contained in this row.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': 'yyyyMMdd', + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'ORG_EFF_NUM_DTE', + 'outputField': 'EFFDATE' + } + } + }] + }, + 'ENDEFYMD': { + 'title': 'End date', + 'description': 'The date that ends or closes out the last structural event relating to an institution. For closed institutions, this date represents the day that the institution became inactive.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': 'yyyyMMdd', + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'ORG_END_NUM_DTE', + 'outputField': 'ENDEFYMD' + } + } + }] + }, + 'EQ': { + 'title': 'Equity capital', + 'description': 'Total equity capital (includes preferred and common stock, surplus and undivided profits).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'EQ' + }] + }, + 'ESTYMD': { + 'title': 'Established Date', + 'description': 'The date on which the institution began operations.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'INST_FIN_ESTB_DTE', + 'outputField': 'ESTYMD' + } + } + }] + }, + 'FDICDBS': { + 'title': 'FDIC Geographic Region', + 'description': 'The FDIC Office assigned to the geographic area. The eight FDIC Regions and their respective states are: Boston - Connecticut, Maine, Massachusetts, New Hampshire, Rhode Island, Vermont New York - Delaware, District of Columbia, Maryland, New Jersey, New York, Pennsylvania, Puerto Rico, U.S. Virgin Islands Atlanta - Alabama, Florida, Georgia, North Carolina, South Carolina, Virginia, West Virginia Memphis - Arkansas, Kentucky, Louisiana, Mississippi, Tennessee Chicago - Illinois, Indiana, Michigan, Ohio, Wisconsin Kansas City - Iowa, Kansas, Minnesota, Missouri, Nebraska, North Dakota, South Dakota Dallas - Colorado, New Mexico, Oklahoma, Texas San Francisco - Alaska, American Samoa, Arizona, California, Guam, Hawaii, Idaho, Montana, Nevada, Oregon, States of Micronesia, Utah, Washington, Wyoming', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_REGN_OFC_CDE' + }] + }, + 'FDICREGN': { + 'title': 'FDIC Supervisory Region', + 'description': 'The supervisory FDIC office assigned to the institution. The eight FDIC Supervisory Regions and their respective states are: Boston - Connecticut, Maine, Massachusetts, New Hampshire, Rhode Island, Vermont New York - Delaware, District of Columbia, Maryland, New Jersey, New York, Pennsylvania, Puerto Rico, U.S. Virgin Islands Atlanta - Alabama, Florida, Georgia, North Carolina, South Carolina, Virginia, West Virginia Memphis - Arkansas, Kentucky, Louisiana, Mississippi, Tennessee Chicago - Illinois, Indiana, Michigan, Ohio, Wisconsin Kansas City - Iowa, Kansas, Minnesota, Missouri, Nebraska, North Dakota, South Dakota Dallas - Colorado, New Mexico, Oklahoma, Texas San Francisco - Alaska, American Samoa, Arizona, California, Guam, Hawaii, Idaho, Montana, Nevada, Oregon, States of Micronesia, Utah, Washington, Wyoming', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_REGN_OFC_DESC' + }] + }, + 'FDICSUPV': { + 'title': 'Federal Reserve District', + 'description': 'The supervisory FDIC office assigned to the institution. There are twelve Federal Reserve Districts, with two Districts serving one state in some instances. The list of Federal Reserve Districts and their respective states are as follows: Boston - Connecticut, Maine, Massachuestts, New Hampshire, Rhode Island, Vermont New York - Connecticut, New Jersey, New York, Puerto Rico U.S. Virgin Islands Phildelphia - Delaware, New Jersey, Pennsylvania Cleveland - Kentucky, Ohio, Pennsylvania, West Virginia Richmond - Maryland, North Carolina, South Carolina, Virginia, West Virginia Atlanta - Alabama, Florida, Georgia, Louisiana, Mississippi, Tennessee Chicago - Illinois, Indiana, Iowa, Michigan, Wisconsin St. Louis - Arkansas, Illinois, Indiana, Kentucky, Mississippi, Missouri, Tennessee Minneapolis - Michigan, Minnesota, Montana, North Dakota, South Dakota, Wisconsin Kansas City - Colorado, Kansas, Missouri, Nebraska, New Mexico, Oklahoma, Wyoming Dallas - Louisiana, New Mexico, Texas San Francisco> - Alaska, American Samoa, Arizona, California, Guam, Hawaii, Idaho, Nevada, Oregon, States of Micronesia, Utah, Washington', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_SPVR_REGN_DESC' + }, { + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.SUPRV_FD == '16') {\n ctx.FDICSUPV = 'WASHINGTON';\n}\n" + } + } + }] + }, + 'FED': { + 'title': 'Federal Reserve ID Number', + 'description': 'A number used to identify the Federal Reserve district in which the institution is located. 01 – Boston, 02 - New York,03 – Philadelphia, 04 – Cleveland,05 – Richmond,06 – Atlanta,07 – Chicago,08 - St. Louis,09 – Minneapolis,10 - Kansas city,11 – Dallas,12 - San Francisco', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_FRB_DIST_CDE' + }] + }, + 'FED_RSSD': { + 'title': 'Federal Reserve ID Number', + 'description': "A unique number assigned by the Federal Reserve board as the entity's unique identifier", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ID_RSSD' + }] + }, + 'FEDCHRTR': { + 'title': 'Federal charter flag', + 'description': 'A flag used to indicate whether the institution is chartered by an agent of the federal government.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.CHRTAGNT?.toLowerCase() == 'occ' || ctx.CHRTAGNT?.toLowerCase() == 'ots') {\n ctx.FEDCHRTR = 1;\n} else {\n ctx.FEDCHRTR = 0;\n} \n" + } + } + }], + 'options': [0, 1] + }, + 'FLDOFF': { + 'title': 'FDIC Field Office', + 'description': 'The FDIC Field Office where an institution is physically located.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_DOS_FLD_NME' + }] + }, + 'FORM31': { + 'title': 'FFIEC Call Report 31 Filer', + 'description': 'A flag (1=yes,0=no) that indicates whether and institution filed an FFIEC 031 Call Report. Commercial banks with domestic and foreign offices are required to file such a report.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'FORM31' + }], + 'options': [0, 1] + }, + 'HCTMULT': { + 'title': 'Bank Holding Company Type', + 'description': 'A flag used to indicate whether an institution is a member of a multibank holding company 1=yes, 0=no', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'HCTMULT' + }] + }, + 'IBA': { + 'title': 'Insured offices of foreign banks', + 'description': 'Includes Bank Insurance Fund insured branches in the U.S. established by banks chartered and headquartered in foreign countries. These institutions are regulated by one of the three Federal commercial bank regulators and submit financial data to the Federal Reserve.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if (ctx.INST_IBA_FLG?.toLowerCase() == "y" || ctx.INST_IBA_FLG?.toLowerCase() == "l") { \n ctx.IBA = 1;\n} else { \n ctx.IBA = 0;\n}\n' + } + } + }] + }, + 'INACTIVE': { + 'title': 'Inactive', + 'description': 'Institutions that are currently closed but were once insured by the FDIC.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if (ctx.INST_FIN_ACTV_FLG?.toLowerCase() == "y") { \n ctx.INACTIVE = 0;\n} else { \n ctx.INACTIVE = 1;\n}\n' + } + } + }], + 'options': [0, 1] + }, + 'INSAGNT1': { + 'title': 'Insurance Fund Membership', + 'description': 'Deposit Insurance Fund (DIF), Bank Insurance Fund (BIF), Savings Association Insurance Fund (SAIF) ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'AGY_1_INS_ABBV_NME' + }] + }, + 'INSAGNT2': { + 'title': 'Secondary Insurance Fund', + 'description': 'As a result of the establishment of a single Deposit Insurance Fund (DIF) effective April 1, 2006, the Secondary Insurance fund is no longer applicable. previously both bif and saif bank insurance fund - institutions that are members of the bank insurance fund savings association insurance fund - Institutions that are members of the Savings Association Insurance Fund', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'AGY_2_INS_ABBV_NME' + }] + }, + 'INSBIF': { + 'title': 'Bank Insurance Fund', + 'description': 'Institutions who are members of the Bank Insurance Fund. As of April 1, 2006 BIF was merged together with the Savings Institution Insurance Fund (SAIF) to create a single Deposit Insurance Fund (DIF). All FDIC insured BIF member institutions, that are still active or open, are now insured members of DIF.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if (ctx.INSAGNT1?.toLowerCase() == "bif") { \n ctx.INSBIF = 1;\n} else { \n ctx.INSBIF = 0;\n}\n' + } + } + }], + 'options': [0, 1] + }, + 'INSCOML': { + 'title': 'Insured commercial banks', + 'description': 'Includes commercial banks insured by the FDIC. These institutions are regulated by one of the three Federal commercial bank regulators (FDIC, Federal Reserve Board, or Office of the Comptroller of the Currency). They submit financial reports to the Federal Reserve (state member banks) or the FDIC (state non-member banks and national banks).', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (\n (ctx.INSAGNT1?.toLowerCase() == 'bif' || ctx.INSAGNT1?.toLowerCase() == 'saif' || ctx.INSAGNT1?.toLowerCase() == 'dif' ) && \n (ctx.BKCLASS?.toLowerCase() == 'n' || ctx.BKCLASS?.toLowerCase() == 'nc' || ctx.BKCLASS?.toLowerCase() == 'nm')\n )\n{\n ctx.INSCOML = 1;\n} else if (\n (ctx.INSAGNT1?.toLowerCase() == 'bif' || ctx.INSAGNT1?.toLowerCase() == 'saif' || ctx.INSAGNT1?.toLowerCase() == 'dif' ) && \n (ctx.BKCLASS?.toLowerCase() == 'sm') && (ctx.ORG_TYP_NUM != 110) && (ctx.ORG_TYP_NUM != 115) && (ctx.ORG_TYP_NUM != 130) && (ctx.ORG_TYP_NUM != 135)\n) {\n ctx.INSCOML = 1;\n}\nelse {\n ctx.INSCOML = 0;\n}\n" + } + } + }], + 'options': [0, 1] + }, + 'INSDATE': { + 'title': 'Date of Deposit Insurance', + 'description': 'The date that an institution obtained federal deposit insurance.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'POL_1_INS_BEG_DTE', + 'outputField': 'INSDATE' + } + } + }] + }, + 'INSDIF': { + 'title': 'Deposit Insurance Fund member', + 'description': 'A flag used to indicate whether an institution is insured under the Deposit Insurance Fund (DIF). As of April 1, 2006 the Bank Insurance Fund (BIF) was merged together with the Savings Institution Insurance Fund (SAIF) to create a single Deposit Insurance Fund (DIF). All FDIC insured BIF and SAIF member institutions that are still active or open are now insured members of DIF. 0 = No, not DIF insured and 1 = Yes, DIF insured. Note that institutions that became inactive prior to April 1006 will also have zero value.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'INSDIF' + }], + 'options': [0, 1] + }, + 'INSFDIC': { + 'title': 'FDIC Insured', + 'description': 'Includes institutions insured by the FDIC.', + 'type': 'number', + 'x-source-mapping': [{ + 'formula': { + 'type': 'simpleSet', + 'parameters': { + 'setField': 'INSFDIC', + 'setValue': 1 + } + } + }], + 'options': [0, 1] + }, + 'INSSAIF': { + 'title': 'SAIF Insured', + 'description': 'Institutions who are members of the Savings Association Insurance Fund. As of April 1, 2006 SAIF was merged together with the Bank Insurance Fund (BIF) to create a single Deposit Insurance Fund (DIF). All FDIC insured SAIF member institutions, that are still active or open, are now insured members of DIF.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'simpleSet', + 'parameters': { + 'setField': 'INSSAIF', + 'setValue': 0 + } + } + }], + 'options': [0, 1] + }, + 'INSSAVE': { + 'title': 'Insured Savings Institution', + 'description': 'Includes savings institutions insured by the FDIC that operate under state or federal banking codes applicable to thrift institutions. These institutions are regulated by and submit financial reports to one of two Federal regulators (FDIC or Office of Thrift Supervision).', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'simpleSet', + 'parameters': { + 'setField': 'INSSAVE', + 'setValue': 0 + } + } + }], + 'options': [0, 1] + }, + 'INSTAG': { + 'title': 'Agricultural lending institution indicator', + 'description': 'An indicator specifying whether an institution is primarily an agricultural lending institution.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'INSTAG' + }], + 'options': [0, 1] + }, + 'INSTCRCD': { + 'title': 'Credit Card Institutions', + 'description': 'Institutions with total loans greater than 50% of total assets and credit card loans greater than 50% of total loans, including loans that have been securitized and sold.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'ctx.INSTCRCD = 0;' + } + } + }] + }, + 'LAW_SASSER_FLG': { + 'title': 'Law Sasser Flag', + 'description': 'A flag, yes=1 and no=0 associated with OTS supervised savings associations that converted their charter to that of a commercial or savings bank. Converted associations remain members of the SAIF, but they become subject to supervision by one of the three federal banking agencies. Not Applicable as of March 31, 2006.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LAW_SASSER_FLG' + }], + 'options': [0, 1] + }, + 'MSA': { + 'title': 'Metropolitan Statistical Area (MSA)', + 'description': 'The Metropolitan Statistical Areas based on Census Bureau data, as defined by the US Office of Management (OMB) prior to the year 2000.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_MSA_NME' + }] + }, + 'MSA_NO': { + 'title': 'Metropolitan Statistical Area Number', + 'description': 'The Metropolitan Statistical Area Number (MSA_NO) in which the institution is physically located. The Office of Managment and Budget defines MSAs in terms of entire counties surrounding central cities, except in the six New England states where they are defined in terms of cities and towns within counties. Before 200 standards', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_MSA_NUM' + }] + }, + 'MUTUAL': { + 'title': 'Ownership Type', + 'description': 'Banking institutions fall into one of two ownership types, stock or non-stock. An institution which sells stock to raise capital is called a stock institution. It is owned by the shareholders who benefit from profits earned by the institution. A non-stock institution, or mutual institution, is owned and controlled solely by its depositors. A mutual does not issue capital stock.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'MUTUAL' + }] + }, + 'NAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Institution name', + 'description': 'The legal name of the institution.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_FIN_LGL_NME' + }] + }, + 'NAMEHCR': { + 'title': 'Bank Holding Company (Regulatory Top Holder)', + 'description': "Regulatory top holder is assigned by the Federal Reserve Board based on ownership and control percentages. Note: Information on bank holding companies is only as of quarter-end. Regulatory top holder is any company that directly or indirectly owns, controls or has power to vote 25 percent or more of a bank's or direct holding company's shares or controls in any manner the election of a majority of the directors or trustees of a bank or direct holding company or exercises a controlling influence over the management or policies of a bank or direct holding company. Information on Thrift Holding Companies that own Savings Associations but do not own banks is not currently available in the ID System. Source: Federal Reserve Board National Information Center data base.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'NAMEHCR' + }] + }, + 'NETINC': { + 'title': 'Net income', + 'description': 'Net interest income plus total noninterest income plus realized gains (losses) on securities and extraordinary items, less total noninterest expense, loan loss provisions and income taxes.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'NETINC' + }] + }, + 'NETINCQ': { + 'title': 'Net income - quarterly', + 'description': 'Quarterly net interest income plus total noninterest income plus realized gains (losses) on securities and extraordinary items, less total noninterest expense, loan loss provisions and income taxes.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'NETINCQ' + }] + }, + 'NEWCERT': { + 'title': 'New certificate number', + 'description': 'A new certificate number of an already existing FDIC-insured institution resulting from either a merger or an acquisition.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'ctx.NEWCERT = 0;\nif(ctx.PARSED_EVENTS !== null && ctx.PARSED_EVENTS.length > 0) {\n for (int i = 0; i < ctx.PARSED_EVENTS.length; ++i) {\n ctx.NEWCERT = ctx.PARSED_EVENTS[i].ORG_ACQ_CERT_NUM;\n if (ctx.PARSED_EVENTS[i].ORG_ACQ_CERT_NUM < 0 ) {\n ctx.NEWCERT = 0;\n } \n }\n\n if (ctx.CHANGEC1 == 150) {\n ctx.NEWCERT = 0;\n } \n if ((ctx.CHANGEC1 < 200) && (ctx.CHANGEC1 > 300)) {\n if (((ctx.CHANGEC1 < 831) && (ctx.CHANGEC1 > 700)) ||\n ((ctx.CHANGEC2 < 831) && (ctx.CHANGEC1 > 700)) ||\n ((ctx.CHANGEC3 < 831) && (ctx.CHANGEC1 > 700)) ||\n ((ctx.CHANGEC4 < 831) && (ctx.CHANGEC1 > 700)) ||\n ((ctx.CHANGEC5 < 831) && (ctx.CHANGEC1 > 700))) {\n ctx.NEWCERT = 0;\n }\n }\n}\n' + } + } + }] + }, + 'OAKAR': { + 'title': 'Oakar Institutions', + 'description': "A member of one insurance fund that acquired deposits insured by the other fund, where that portion of the buyer's deposits remained insured by, and assessable by, the other fund.", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if (ctx.INSAGNT1?.toLowerCase() == "bif" && ctx.INSAGNT2?.toLowerCase() == "saif") {\n ctx.OAKAR = 1; \n} else { \n ctx.OAKAR = 0; \n}\n' + } + } + }], + 'options': [0, 1] + }, + 'OCCDIST': { + 'title': 'Office of the Comptroller', + 'description': 'The Office of the Comptroller of the Currency (OCC) District in which the institution is physically located. The six OCC Districts and their respective states are: Northeast - Connecticut, Delaware, District of Columbia, Maine, Maryland, Massachusetts, New Hampshire, New Jersey, New York, Pennsylvania, Puerto Rico, Rhode Island, Vermont, U.S. Virgin Islands Southeast - Alabama, Florida, Georgia, Mississippi, North Carolina, South Carolina, Tennessee, Virginia, West Virginia Central - Illinois, Indiana, Kentucky, Michigan, Ohio, Wisconsin Midwest - Iowa, Kansas, Minnesota, Missouri, Nebraska, North Dakota, South Dakota Southwest - Arkansas, Louisiana, New Mexico, Oklahoma, Texas West - Alaska, American Samoa, Arizona, California, Colorado, Guam, Hawaii, Idaho, Montana, Nevada, Oregon, States of Micronesia, Utah, Washington, Wyoming ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_OCC_DIST_CDE' + }] + }, + 'OFFDOM': { + 'title': 'Number of Domestic Offices', + 'description': 'The number of domestic offices (including headquarters) operated by active institutions in the 50 states of the U.S.A.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'OFFDOM' + }] + }, + 'OFFFOR': { + 'title': 'Number of Foreign Offices', + 'description': 'The number of foreign offices (outside the U.S.) operated by the institution.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'OFFFOR' + }] + }, + 'OFFICES': { + 'title': 'Office', + 'description': 'A branch/office is any location, or facility, of a financial institution, including its main office, where deposit accounts are opened, deposits are accepted, checks paid, and loans granted. Some branches include, but are not limited to, brick and mortar locations, detached or attached drive-in facilities, seasonal offices, offices on military bases or government installations, paying/receiving stations or units, nondeposit offices, Internet and PhoneBanking locations where a customer can open accounts, make deposits and borrow money. A branch does not include Automated Teller Machines (ATM), Consumer Credit Offices, Contractual Offices, Customer Bank Communication Terminals (CBCT), Electronic Fund Transfer Units (EFTU), and Loan Production Offices Summary of Deposits information is required for each insured office located in any State, the District of Columbia, the Commonwealth of Puerto Rico or any U.S. territory or possession such as Guam or the U.S. Virgin Islands, without regard to the location of the main office.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'test' + }] + }, + 'OFFOA': { + 'title': 'Number of US Offices', + 'description': 'The number of offices operated by an FDIC-insured institution in all commonwealths and terrirtories of the US, along with those in freely associated states under the Compact of Free Association', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'OFFOA' + }] + }, + 'OTSDIST': { + 'title': 'OTS District', + 'description': 'Office of Thrift Supervision (OTS) District - Sunset (ended) 7/21/11', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_OTS_DIST_CDE' + }] + }, + 'OTSREGNM': { + 'title': 'Office of Thrift Supervision Region', + 'description': 'Prior to 7/21/11, the Office of Thrift Supervision (OTS) Region in which the institution is physically located. The five OTS Regions and their respective states are: Northeast - Connecticut, Delaware, Maine, Massachusetts, New Hampshire, New Jersey, New York, Pennsylvania, Rhode Island, Vermont, West Virginia Southeast - Alabama, District of Columbia, Florida, Georgia, Maryland, North Carolina, Puerto Rico, South Carolina, U.S. Virgin Islands, Virginia Central - Illinois, Indiana, Kentucky, Michigan, Ohio, Tennessee, Wisconsin Midwest - Arkansas, Colorado, Iowa, Kansas, Louisiana, Minnesota, Mississippi, Missouri, Nebraska, New Mexico, North Dakota, Oklahoma, South Dakota, Texas West - Alaska, American Samoa, Arizona, California, Guam, Hawaii, Idaho, Montana, Nevada, States of Micronesia, Oregon, Utah, Washington, Wyoming', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_OTS_DIST_DESC' + }] + }, + 'PARCERT': { + 'title': 'Directly owned by another bank (CERT)', + 'description': 'The PARCERT number identifies the subsidiary institutions parent certificate number. Beginning in March 1997, both the Thrift Financial Reports and Call Reports are completed on a fully consolidated basis. Previously, the consolidation of subsidiary depository institutions was prohibited. Now, parent institutions are required to file consolidated reports, while their subsidiary financial institutions are still required to file separate reports. ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'PARCERT' + }] + }, + 'PROCDATE': { + 'title': 'Last Structure Change Process Date', + 'description': "A date field indicating the date that a change to this record was processed. Standard format = 'CCYYMMDD' (Length = 8) which has been converted to Month, Day, Year format for display purposes.", + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.EVENTS !== null ) { \n Date procDate = null;\n for (int i = 0; i < ctx.EVENTS.length; ++i) {\n if (ctx.EVENTS[i]?.EFFDATE == ctx.ORG_EFF_NUM_DTE && ctx.EVENTS[i]?.ENDEFYMD == ctx.ORG_END_NUM_DTE) {\n SimpleDateFormat dateFormatIn = new SimpleDateFormat("yyyy-MM-dd\'T\'HH:mm:ss");\n SimpleDateFormat dateFormatOut = new SimpleDateFormat("MM/dd/yyyy");\n if(ctx.EVENTS[i].PROCDATE !== null) {\n Date formattedProcDate = dateFormatIn.parse(ctx.EVENTS[i].PROCDATE);\n\n if (procDate == null || formattedProcDate.after(procDate)) {\n String currentProcDate = dateFormatOut.format(formattedProcDate);\n ctx.PROCDATE = currentProcDate;\n ctx.DATEUPDT = currentProcDate;\n } \n }\n\n }\n }\n}\n' + } + } + }] + }, + 'QBPRCOML': { + 'title': 'Quarterly Banking Profile Commercial Bank Region', + 'description': 'The Quarterly Banking Profile (QBP) Commercial Bank Region in which the institution is physically located. Select from a drop down box. regional breakdown. group data by qbp region is only available for insured commercial banks and insured savings institutions and NOT All Insured Institutions, Insured Commercial Banks by asset size and Insured Savings Institutions by asset size. ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'QBPRCOML', + 'field': 'QBPRCOML' + }] + }, + 'REGAGNT': { + 'title': 'Regulator', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF). ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'AGY1_GOV_SPVRABNME' + }] + }, + 'REGAGENT2': { + 'title': 'Regulator 2', + 'description': 'There are four Federal regulators of banks and savings and loan institutions (There are now three federal regulators of banks and savings and loan institutions. Berfore July 21, 2011, there were four federal regulators): federal deposit insurance corporation (fdic) - primary federal regulator responsible for state-chartered banks not members of the Federal Reserve System and state chartered savings banks. Federal Reserve Board (FRB) - Primary Federal regulator responsible for state-chartered commercial bank members of the Federal Reserve System. Office of the Comptroller of the Currency (OCC) - Primary Federal regulator responsible for nationally chartered commercial banks and federally chartered savings and loan associations. Before 7/21/11, Office of Thrift Supervision (OTS) - Primary Federal regulator responsible for federally chartered savings and loan associations, federal savings banks and state-chartered savings and loan associations. FDIC insured depository institutions are members of the Deposit Insurance Fund (DIF). ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'AGY2_GOV_SPVRABNME' + }] + }, + 'REPDTE': { + 'title': 'Report Date', + 'description': 'The last day of the financial reporting period selected.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'REPDTE_RAW', + 'outputField': 'REPDTE' + } + } + }] + }, + 'RISDATE': { + 'title': 'Report Date', + 'description': 'The financial reporting period selected in CCYYMM format.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'REPDTE_RAW', + 'outputField': 'RISDATE' + } + } + }] + }, + 'ROA': { + 'title': 'Return on assets (ROA)', + 'description': 'Net income after taxes and extraordinary items (annualized) as a percent of average total assets.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROA' + }] + }, + 'ROAPTX': { + 'title': 'Pretax return on assets', + 'description': 'Annualized pre-tax net income as a percent of average assets. Note: Includes extraordinary items and other adjustments, net of taxes.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROAPTX' + }] + }, + 'ROAPTXQ': { + 'title': 'Quarterly Pretax return on assets', + 'description': 'Quarterly pre-tax net income as a percent of average assets. Note: Includes extraordinary items and other adjustments, net of taxes.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROAPTXQ' + }] + }, + 'ROAQ': { + 'title': 'Quarterly return on assets', + 'description': 'Quarterly net income after taxes and extraordinary items as a percent of average total assets.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROAQ' + }] + }, + 'ROE': { + 'title': 'Return on Equity (ROE)', + 'description': 'Annualized net income as a percent of average equity on a consolidated basis. Note: If retained earnings are negative, the ratio is shown as NA. ', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROE' + }] + }, + 'ROEQ': { + 'title': 'Quarterly return on equity', + 'description': 'Quarterly net income (including gains or losses on securities and extraordinary items) as a percentage of average total equity capital.', + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'ROEQ' + }] + }, + 'RSSDHCR': { + 'title': 'RSSDID - High Regulatory Holder', + 'description': 'The unique number assigned by the Federal Reserve Board to the regulatory high holding company of the institution.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'RSSDHCR' + }] + }, + 'RUNDATE': { + 'title': 'Run Date', + 'description': 'The day the institution information was updated.', + 'type': 'string', + 'format': 'date-time', + 'x-source-mapping': [{ + 'formula': { + 'type': 'simpleSetScript', + 'parameters': { + 'setField': 'RUNDATE', + 'script': 'new SimpleDateFormat("MM/dd/yyyy").format(new Date())' + } + } + }] + }, + 'SASSER': { + 'title': 'Sasser Institutions', + 'description': 'OTS supervised savings associations that converted their charter to that of a commercial or savings bank. Converted associations remain members of the SAIF, but they become subject to supervision by one of the three federal banking agencies. Not Applicable as of March 31, 2006.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.LAW_SASSER_FLG?.toLowerCase() == 'y' ) {\n ctx.SASSER = 1;\n} else {\n ctx.SASSER = 0;\n}\n" + } + } + }], + 'options': [0, 1] + }, + 'SPECGRP': { + 'title': 'Asset Concentration Hierarchy', + 'description': "An indicator of an institution's primary specialization in terms of asset concentration", + 'type': 'number', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'SPECGRP' + }] + }, + 'SPECGRPN': { + 'title': 'Specialization Group', + 'description': "Name associated with the numeric indicator (SPECGRP) of an institution's primary specialization in terms of asset concentration", + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.SPECGRP == 0) {\n ctx.SPECGRPN = 'No Specialization Group';\n} \nelse if (ctx.SPECGRP == 1) {\n ctx.SPECGRPN = 'International Specialization';\n} \nelse if (ctx.SPECGRP == 2) {\n ctx.SPECGRPN = 'Agricultural Specialization';\n} \nelse if (ctx.SPECGRP == 3) {\n ctx.SPECGRPN = 'Credit-card Specialization';\n} \nelse if (ctx.SPECGRP == 4) {\n ctx.SPECGRPN = 'Commercial Lending Specialization';\n} \nelse if (ctx.SPECGRP == 5) {\n ctx.SPECGRPN = 'Mortgage Lending Specialization';\n} \nelse if (ctx.SPECGRP == 6) {\n ctx.SPECGRPN = 'Consumer Lending Specialization';\n} \nelse if (ctx.SPECGRP == 7) {\n ctx.SPECGRPN = 'Other Specialized Under 1 Billion';\n} \nelse if (ctx.SPECGRP == 8) {\n ctx.SPECGRPN = 'All Other Under 1 Billion';\n} \nelse if (ctx.SPECGRP == 9) {\n ctx.SPECGRPN = 'All Other Over 1 Billion';\n} \nelse {\n ctx.SPECGRPN = 'Error in Specialization Group';\n} \n" + } + } + }] + }, + 'STALP': { + 'title': 'State Alpha code', + 'description': 'State in which the the headquarters are physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_ST_ABNME' + }], + }, + 'STALPHCR': { + 'title': 'Regulatory holding company state location', + 'description': 'State location of the regulatory high holding company (either direct or indirect owner).', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'STALPHCR' + }] + }, + 'STCHRTR': { + 'title': 'State Charter', + 'description': 'A flag (1=yes;0=no) that indicates if an institution is state chartered.', + 'type': 'string', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.CHRTAGNT?.toLowerCase() == 'state') {\n ctx.STCHRTR = 1;\n} else {\n ctx.STCHRTR = 0;\n}\n" + } + } + }], + 'options': [0, 1] + }, + 'STCNTY': { + 'title': 'State and county number', + 'description': 'A five digit number representing the state and county in which the institution is physically located. The first two digits represent the FIPS state numeric code and the last three digits represent the FIPS county numeric code.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'SEE METADATA', + 'field': 'SEE METADATA' + }] + }, + 'STNAME': { + 'title': 'State Name', + 'description': 'State in which the the institution is physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_ST_NME' + }], + }, + 'STNUM': { + 'title': 'State Number', + 'description': 'The Federal Information Processing Standard code used to identify states', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_ST_NUM' + }] + }, + 'SUBCHAPS': { + 'title': 'Subchapter S Corporations', + 'description': "The Small Business Job Protection Act of 1996 changed the Internal Revenue Code to allow financial institutions to elect Subchapter S corporation status, beginning in 1997. Banks are required to indicate on the Call Report whether there is currently in effect an election to file under Subchapter S. Thrifts have a similar requirement as of March 1998. The most important IRS requirements to elect and maintain Subchapter S status are: There can be no more than 75 eligible shareholders and no more than one class of stock. (In general, shareholders can only be individuals, estates, and certain types of trusts. Certain retirement plans and charitable organizations will be eligible in 1998.) All shareholders must consent. Banks and thrifts converting to Subchapter S status must use the specific charge-off method for tax purposes rather than the reserve method of accounting for bad debts and recapture tax bad debt reserves over a period of six years, if the reserve method had been used prior to conversion. (Note: even though the specific charge-off method is required for tax purposes, an adequate allowance for loan and lease losses must still be maintained on the financial statements and Call Reports.) Banks and thrifts are subject to a built-in gains (BIG) tax, if the aggregate fair market value of assets is greater than their aggregate adjusted bases on the date of conversion to Subchapter S status. [Banks are required to indicate separately on the Call Report in December of each year, the deferred portion of income taxes reported in net income. For Subchapter S banks, some or all of their deferred tax assets and liabilities may be eliminated upon conversion to Subchapter S status; however, deferred taxes related to the BIG tax and the recapture of bad debt reserves must be recognized.]. A Subchapter S corporation is treated as a pass-through entity, similar to a partnership, for federal income tax purposes. It is generally not subject to any federal income taxes at the corporate level. Its taxable income flows through to its shareholders in proportion to their stock ownership, and the shareholders generally pay federal income taxes on their share of this taxable income. This can have the effect of reducing institutions' reported income tax expense and increasing their after-tax earnings.. The election of Subchapter S status may result in an increase in shareholders' personal tax liabilities. Therefore, S corporations typically increase the amount of earnings distributed as dividends to compensate for higher personal taxes.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'SUBCHAPS' + }] + }, + 'SUPRV_FD': { + 'title': 'Supervisory Region Number', + 'description': 'A numeric value associated with the name of an FDIC supervisory region', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_SPVR_REGN_CDE' + }] + }, + 'TE01N528': { + 'title': 'Web Site URL 01', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE01N528' + }] + }, + 'TE02N528': { + 'title': 'Web Site URL 02', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE02N528' + }] + }, + 'TE03N528': { + 'title': 'Web Site URL 03', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE03N528' + }] + }, + 'TE04N528': { + 'title': 'Web Site URL 04', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE04N528' + }] + }, + 'TE05N528': { + 'title': 'Web Site URL 05', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE05N528' + }] + }, + 'TE06N528': { + 'title': 'Web Site URL 06', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE06N528' + }] + }, + 'TE07N528': { + 'title': 'Web Site URL 07', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE07N528' + }] + }, + 'TE08N528': { + 'title': 'Web Site URL 08', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE08N528' + }] + }, + 'TE09N528': { + 'title': 'Web Site URL 09', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE09N528' + }] + }, + 'TE10N528': { + 'title': 'Web Site URL 10', + 'description': 'URL of other public-facing internet web site the reporting institution uses to accept or solicit deposits from the public', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE10N528' + }] + }, + 'TE01N529': { + 'title': 'Trade Name 01', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE01N529' + }] + }, + 'TE02N529': { + 'title': 'Trade Name 02', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE02N529' + }] + }, + 'TE03N529': { + 'title': 'Trade Name 03', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE03N529' + }] + }, + 'TE04N529': { + 'title': 'Trade Name 04', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE04N529' + }] + }, + 'TE05N529': { + 'title': 'Trade Name 05', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE05N529' + }] + }, + 'TE06N529': { + 'title': 'Trade Name 06', + 'description': "Trade name other than the institution's legal name used to identify one of the institution's physical offices at which deposits are accepted or solicited from the public", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_PUB_NRTV_TXT', + 'field': 'TE06N529' + }] + }, + 'TRACT': { + 'title': '', + 'description': 'Beyond having trust powers granted and exercised, institutions with fiduciary assets accounts, income, or other reportable fiduciary related service', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'TRACT' + }] + }, + 'TRUST': { + 'title': 'Trust Powers', + 'description': "A flag used to indicate an institution's Trust Powers Granted status. 0 = No Trust Power Granted 1 = Trust Power Granted Where Trust Power has been granted specific codes are: 00 - Trust powers not know 10 - Full trust powers granted 11 - Full trust powers granted, exercised 12 - Full trust powers granted, not exercised 20 - Limited trust powers granted 21 - Limited trust powers granted, exercised 22 - Limited trust powers granted, not exercised 30 - Trust powers not granted 31 - Trust powers not granted, but exercised ", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'RISVIEW', + 'field': 'TRUST' + }], + 'options': [0, 1] + }, + 'ULTCERT': { + 'title': 'Ultimate Cert', + 'description': 'The cert number of the last successor or acquirer of the institution ', + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FNL_SDC', + 'field': 'ORG_FNL_CERT_NUM' + }] + }, + 'UNINUM': { + 'title': "FDIC's unique number", + 'description': "FDIC's unique identifier number for holding companies, banks, branches and nondeposit subsidiaries.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_UNIQ_NUM' + }] + }, + 'WEBADDR': { + 'title': 'Primary Internet Web Address', + 'description': "The primary internet web address is the public internet site obtained from the most recent FFIEC Call Report (CALL) for commercial banks or from the supplemental information for Thrift Financial Reporters (TFR). The primary internet web address is included only for those institutions reporting an address on the most recent FFIEC Call Report or Thrift Financial Report. This information resides in the most recent demographic information file. For some institutions users will find that for the item Primary Internet Web Address: the caption will read 'Web site not available'. Possible reasons that a Web site may not be available are: The institution failed to file on the most recent call report or TFR. The institution filed a primary Internet Web address on its most recent FFIEC Call Report; however, the address filed by the institution was not in accordance with the instructions provided by the FFIEC on how to file a primary Internet Web address or FDIC attempts to validate and access the site were unsuccessful. Users may also experience instances where the URL provided for primary Internet Web address in ID returns an error stating that the site is not found. Possible reasons for such occurrences are: The institution?s reported primary Web address was valid as of the date that the demographic information was updated in ID, but is no longer valid. The institution?s reported Internet Web address is valid, but the institution?s Web site was inoperable at the time that the user attempted to access it due to technical problems being experienced by the institution?s Web site, the institution?s web provider, the user?s Web provider, or other issues not related to the validity of the Web address. Users are advised to contact the institution on any questions regarding the services provided by the institution. For questions involving the reporting of primary Internet Web address by those institutions that file a FFIEC Call report, users are advised to contact supervision@fdic.gov. For questions involving the primary Internet Web address of institutions that file a Thrift Financial Report, users are advised to contact pamela.schaar@ots.treas.gov or call Ms. Schaar at (202) 906-7205. Disclaimer: The Primary Internet Web Addresses listed have been reported to the FDIC by each institution. The hyperlinks to institution Internet sites are provided solely as a convenience to users of the FDIC Internet site. The FDIC has made a limited effort to determine that these links function properly. However, linked sites are not under the control of FDIC, and FDIC is not responsible for the contents of any linked site, or any link contained in a linked site. Even if you access an institution?s site by means of the link provided by FDIC, you are responsible for confirming the identity and authenticity of any institution you visit and transact business with online. The inclusion of a link does not imply or constitute an endorsement by FDIC of the institution, its ownership or management, the products or services it offers, or any advertisers or sponsors appearing on the institution?s web site.", + 'type': 'string', + 'x-source-mapping': [{ + 'file': 'TCALL_CNF_CNTC_INF', + 'field': 'BKWEBADDR' + }] + }, + 'ZIP': { + 'type': 'string', + 'title': 'Zip Code', + 'description': 'The first three, four, or five digits of the full postal zip code representing physical location of the institution or its branch office.', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.ZIP_RAW != null && ctx.ZIP_RAW?.length() < 5){\n StringBuilder sb = new StringBuilder();\n for (int i = 0; i < 5; i++) {\n sb.append('0');\n }\n ctx.ZIP = sb.substring(ctx.ZIP_RAW.length()) + ctx.ZIP_RAW;\n} else {\n ctx.ZIP = ctx.ZIP_RAW;\n}\n" + } + } + }] + } +} \ No newline at end of file diff --git a/bankfind/metadata/location.py b/bankfind/metadata/location.py new file mode 100644 index 0000000..4b73b55 --- /dev/null +++ b/bankfind/metadata/location.py @@ -0,0 +1,348 @@ +location_dict = { + 'ADDRESS': { + 'type': 'string', + 'title': 'Branch Address', + 'description': 'Street address at which the branch is physically located.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_LNE1_TXT' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'LOCN_ADDR_LNE1_TXT' + }] + }, + 'BKCLASS': { + 'type': 'string', + 'title': 'Institution Class', + 'description': "A classification code assigned by the FDIC based on the institution''s charter type (commercial bank or savings institution), charter agent (state or federal), Federal Reserve membership status (Fed member, Fed nonmember) and its primary federal regulator (state chartered institutions are subject to both federal and state supervision). N - Commercial bank, national (federal) charter and Fed member, supervised by the Office of the Comptroller of the Currency (OCC); NM - Commercial bank, state charter and Fed nonmember, supervised by the FDIC; OI - Insured U.S. branch of a foreign chartered institution (IBA); SA - Savings associations, state or federal charter, supervised by the Office of Thrift Supervision (OTS); SB - Savings banks, state charter, supervised by the FDIC; SM - Commercial bank, state charter and Fed member, supervised by the Federal Reserve (FRB)", + 'options': ['N', 'NM', 'OI', 'SA', 'SB', 'SM'], + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.INST_CLASS_CDE?.toLowerCase() == "sb" || ctx.INST_CLASS_CDE?.toLowerCase() == "sl") { \n ctx.BKCLASS = \'SA\'; \n} else if (ctx.INST_CLASS_CDE?.toLowerCase() == "mi" || ctx.INST_CLASS_CDE?.toLowerCase() == "si") { \n ctx.BKCLASS = \'SB\';\n} else {\n ctx.BKCLASS = ctx.INST_CLASS_CDE;\n}\n' + } + } + }] + }, + 'CBSA': { + 'type': 'string', + 'title': 'Core Based Statistical Area Name (Branch)', + 'description': 'Name of the Core Based Statistical Area (CBSA) as defined by the US Census Bureau Office of Management and Budget.', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSANAME' + }] + }, + 'CBSA_DIV': { + 'type': 'string', + 'title': 'Metropolitan Divisions Name (Branch)', + 'description': 'Name of the Core Based Statistical Division as defined by the US Census Bureau Office of Management and Budget.', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA_DIV_NAME' + }] + }, + 'CBSA_DIV_FLG': { + 'type': 'string', + 'title': 'Metropolitan Divisions Flag (Branch)', + 'description': 'A flag (1=Yes) indicating member of a Core Based Statistical Division as defined by the US Census Bureau Office of Management and Budget.', + 'options': [0, 1], + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'DIVISION_FLAG' + }] + }, + 'CBSA_DIV_NO': { + 'type': 'string', + 'title': 'Metropolitan Divisions Number (Branch)', + 'description': 'Numeric code of the Core Based Statistical Division as defined by the US Census Bureau Office of Management and Budget.', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA_DIVISION' + }] + }, + 'CBSA_METRO': { + 'type': 'string', + 'title': 'Metropolitan Division Number (Branch)', + 'description': 'Numeric code of the Metropolitan Statistical Area as defined by the US Census Bureau Office of Management and Budget', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.CBSA_METRO_FLG == "1") {\n ctx.CBSA_METRO = ctx.CBSA_NO;\n} else {\n ctx.CBSA_METRO = 0;\n} \n' + } + } + }] + }, + 'CBSA_METRO_FLG': { + 'type': 'string', + 'title': 'Metropolitan Division Flag (Branch)', + 'description': 'A flag (1=Yes) used to indicate whether an branch is in a Metropolitan Statistical Area as defined by the US Census Bureau Office of Management and Budget', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'METRO_FLAG' + }] + }, + 'CBSA_METRO_NAME': { + 'type': 'string', + 'title': 'Metropolitan Division Name (Branch)', + 'description': 'Name of the Metropolitan Statistical Area as defined by the US Census Bureau Office of Management and Budget', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': 'if(ctx.CBSA_METRO_FLG == "1") {\n ctx.CBSA_METRO_NAME = ctx.CBSA;\n} else {\n ctx.CBSA_METRO_NAME = 0;\n}\n' + } + } + }] + }, + 'CBSA_MICRO_FLG': { + 'type': 'string', + 'title': 'Micropolitan Division Flag (Branch)', + 'description': 'A flag (1=Yes) used to indicate whether an branch is in a Micropolitan Statistical Area as defined by the US Census Bureau Office of Management and Budget', + 'options': [0, 1], + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'MICRO_FLAG' + }] + }, + 'CBSA_NO': { + 'type': 'string', + 'title': 'Core Based Statistical Areas (Branch)', + 'description': 'Numeric code of the Core Based Statistical Area (CBSA) as defined by the US Census Bureau Office of Management and Budget.', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CBSA' + }] + }, + 'CERT': { + 'type': 'string', + 'title': 'Institution FDIC Certificate #', + 'description': 'A unique number assigned by the FDIC used to identify institutions and for the issuance of insurance certificates.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_CERT_NUM' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'ORG_CERT_NUM' + }] + }, + 'CITY': { + 'type': 'string', + 'title': 'Branch City', + 'description': 'City in which branch is physically located.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_CTY_NME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'LOCN_CTY_NME' + }] + }, + 'COUNTY': { + 'type': 'string', + 'title': 'Branch County', + 'description': 'County where the branch is physically located.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_CNTY_NME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'LOCN_CNTY_NME' + }] + }, + 'CSA': { + 'type': 'string', + 'title': 'Combined Statistical Area Name (Branch)', + 'description': 'Name of the Combined Statistical Area (CSA) as defined by the US Census Bureau Office of Management and Budget', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSANAME' + }] + }, + 'CSA_FLG': { + 'type': 'string', + 'title': 'Combined Statistical Area Flag (Branch)', + 'description': 'Flag (1=Yes) indicating member of a Combined Statistical Area (CSA) as defined by the US Census Bureau Office of Management and Budget', + 'options': [0, 1], + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSA_FLAG' + }] + }, + 'CSA_NO': { + 'type': 'string', + 'title': 'Combined Statistical Area Number (Branch)', + 'description': 'Numeric code of the Combined Statistical Area (CSA) as defined by the US Census Bureau Office of Management and Budget', + 'x-source-mapping': [{ + 'file': 'RELATION', + 'field': 'CSA' + }] + }, + 'ESTYMD': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Branch Established Date', + 'description': 'The date on which the branch began operations.', + 'x-source-mapping': [{ + 'formula': { + 'type': 'date', + 'parameters': { + 'inputFormat': "yyyy-MM-dd'T'HH:mm:ss", + 'outputFormat': 'MM/dd/yyyy', + 'inputField': 'ESTYMD_RAW', + 'outputField': 'ESTYMD' + } + } + }] + }, + 'FI_UNINUM': { + 'type': 'string', + 'title': 'FDIC UNINUM of the Owner Institution', + 'description': 'This is the FDIC UNINUM of the institution that owns the branch. A UNINUM is a unique sequentially number added to the FDIC database for both banks and branches. There is no pattern imbedded within the number. The FI_UNINUM is updated with every merger or purchase of branches to reflect the most current owner.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_UNIQ_NUM' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'FI_ORG_UNIQ_NUM' + }] + }, + 'MAINOFF': { + 'type': 'number', + 'title': 'Main Office', + 'description': 'Flag (1=Yes) indicating this location is the main office for the institution.', + 'options': [0, 1], + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'MAINOFF' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'MAINOFF' + }] + }, + 'NAME': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Institution Name', + 'description': 'Legal name of the FDIC Insured Institution', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_FIN_LGL_NME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'INST_FIN_LGL_NME' + }] + }, + 'OFFNAME': { + 'type': 'string', + 'title': 'Office Name', + 'description': 'Name of the branch.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'INST_FIN_LGL_NME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'INST_BR_NME' + }] + }, + 'OFFNUM': { + 'type': 'string', + 'title': 'Branch Number', + 'description': "The branch's corresponding office number.", + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'OFFNUM' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'INST_BR_OFC_NUM' + }] + }, + 'RUNDATE': { + 'type': 'string', + 'format': 'date-time', + 'title': 'Run Date', + 'description': 'The day the institution information was updated.', + 'x-source-mapping': [{ + 'formula': { + 'type': 'simpleSetScript', + 'parameters': { + 'setField': 'RUNDATE', + 'script': 'new SimpleDateFormat("MM/dd/yyyy").format(new Date())' + } + } + }] + }, + 'SERVTYPE': { + 'type': 'number', + 'title': 'Service Type Code', + 'description': 'Define the various types of offices of FDIC-insured institutions. 11 - Full Service Brick and Mortar Office; 12 - Full Service Retail Office; 13 - Full Service Cyber Office; 14 - Full Service Mobile Office; 15 - Full Service Home/Phone Banking; 16 - Full Service Seasonal Office; 21 - Limited Service Administrative Office; 22 - Limited Service Military Facility; 23 - Limited Service Facility Office; 24 - Limited Service Loan Production Office; 25 - Limited Service Consumer Credit Office; 26 - Limited Service Contractual Office; 27 - Limited Service Messenger Office; 28 - Limited Service Retail Office; 29 - Limited Service Mobile Office; 30 - Limited Service Trust Office;', + 'options': [11, 12, 13, 14, 15, 16, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30], + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'SERVTYPE' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'INST_BR_SVC_NUM' + }] + }, + 'STALP': { + 'type': 'string', + 'title': 'Branch State Abbreviation', + 'description': 'State abbreviation in which the branch is physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_ST_ABNME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'LOCN_ST_ABBV_NME' + }] + }, + 'STCNTY': { + 'type': 'string', + 'title': 'State and County Number', + 'description': 'A five digit number representing the state and county in which the institution is physically located. The first two digits represent the FIPS state numeric code and the last three digits represent the FIPS county numeric code.', + 'x-source-mapping': [{ + 'file': 'CALCULATED_IN_PIPELINE', + 'field': 'N/A' + }] + }, + 'STNAME': { + 'type': 'string', + 'title': 'Branch State', + 'description': 'State in which the branch is physically located. The FDIC Act defines state as any State of the United States, the District of Columbia, and any territory of the United States, Puerto Rico, Guam, American Samoa, the Trust Territory of the Pacific Islands, the Virgin Island, and the Northern Mariana Islands.', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'LOCN_PHY_ST_NME' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'LOCN_ST_NME' + }] + }, + 'UNINUM': { + 'type': 'string', + 'title': 'Unique Identification Number for a Branch Office', + 'description': 'Unique Identification Number for a Branch Office as assigned by the FDIC', + 'x-source-mapping': [{ + 'file': 'VINST_FIN_CUR_SDC', + 'field': 'ORG_UNIQ_NUM' + }, { + 'file': 'VINST_BR_CUR_SDC', + 'field': 'ORG_UNIQ_NUM' + }] + }, + 'ZIP': { + 'type': 'string', + 'title': 'Branch Zip Code', + 'description': 'The first five digits of the full postal zip code representing physical location of the branch.', + 'x-source-mapping': [{ + 'formula': { + 'type': 'raw', + 'parameters': { + 'script': "if (ctx.ZIP_RAW != null && ctx.ZIP_RAW?.length() < 5){\n StringBuilder sb = new StringBuilder();\n for (int i = 0; i < 5; i++) {\n sb.append('0');\n }\n ctx.ZIP = sb.substring(ctx.ZIP_RAW.length()) + ctx.ZIP_RAW;\n} else {\n ctx.ZIP = ctx.ZIP_RAW;\n}" + } + } + }] + } +} diff --git a/bankfind/metadata/summary.py b/bankfind/metadata/summary.py new file mode 100644 index 0000000..c9d0755 --- /dev/null +++ b/bankfind/metadata/summary.py @@ -0,0 +1,1178 @@ +summary_dict = { + 'ALLOTHER': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Loans', + 'description': 'All Other Loans' + }, + 'alsonew': { + 'type': 'integer', + 'title': 'New Charters to Absorb Another Charter', + 'description': 'New savings institution charter created to absorb any other type of charter in its first quarter of operation.' + }, + 'ASSET': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Assets', + 'description': 'Total Assets On A Consolidated Basis\nNote: For Banks With Foreign Operations Data For March &\nSeptember Of 1973 Through 1975 Are Reported On A\nDomestic Basis' + }, + 'BANKS': { + 'type': 'integer', + 'title': 'Total Commercial Banks (Filing Y/E Call)', + 'description': 'Total Insured Commercial Banks filing 12/31 fincncial report (See Notes to User for definition of commercial bank)' + }, + 'BKPREM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Bank Premises and Equipment', + 'description': 'Premises and Fixed Assets\nNote:\n(1) Premises and Fixed Assets (Including Capitalized Leases) On A Consolidated Basis\n(2) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Was Reported On A Domestic Basis' + }, + 'BRANCHES': { + 'type': 'integer', + 'title': 'Total Branches', + 'description': 'Branches include all offices of a bank, other than its head office, at which deposits are received, checks paid or money lent. Banking facilities separate from a banking house, banking facilities at government installations, offices, agencies, paying or receiving stations, drive-in facilities and other facilities operated for limited purposes are defined as branches under the FDI Act (see Notes to User)' + }, + 'BRANCHIN': { + 'type': 'integer', + 'title': 'Banks with Branches', + 'description': 'Banks with branches are institutions that operate one or more offices at which deposits are received or other banking business conducted in addition to the main or head office.' + }, + 'BRO': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Brokered Deposits', + 'description': 'Borrowed Deposits (Represents funds which the reporting bank obtains, directly or indirectly, by or through any deposit broker for deposit into one or more deposit accounts. Includes both those in which the entire beneficial interest in a given bank deposit account or investment is held by a single depositor and those in which deposit broker sells participation in a given bank deposit account or instrument to one or more investors).' + }, + 'BRWDMONY': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Borrowed Funds', + 'description': 'Borrowed Funds - (1969-Present -- Represents Federal Funds purchase. securities sold under agreements to repurchase, demand notes issued to the US Treasury, mortgage indebtedness, liabilities under capitalized leases and all other liabilities for borrowed money. -- 1934-1968 -- Does not include mortgage indebtedness which is netted against bank premsises.)' + }, + 'CB_SI': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Commercial Banks (CB) vs. Savings Institution (SI)', + 'description': 'Differentiates the summarised data between the Commercial Banks and the Savings Institutions', + 'options': ['CB', 'SI'] + }, + 'chartoth': { + 'type': 'integer', + 'title': 'Charter Transfers from Commercial Banks', + 'description': 'Represents the transfer of a commercial bank to a savings institution charter that meets the definition of a thrift (see Notes to Table SI-1) and has applied for and received FDIC insurance (BIF or SAIF).' + }, + 'CHBAL': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Cash & Due from Depository Institutions', + 'description': 'Total Cash and Balances Due From Depository Institutions Which Include Both Noninterest-Bearing and Interest-Bearing Deposits On A Consolidated Basis\nNote:\n(1): Additional Detail Can Be Found On Schedule Rc-A\n(2) For Banks With Foreign Operations Data For March and September 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'CHBALI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Interest Earning Balances', + 'description': 'Interest-Bearing Balances Due From Depository Institutions On A Consolidated Basis\nNote: Additional Detail Can Be Found On Schedule Rc-A' + }, + 'chrtrest': { + 'type': 'integer', + 'title': 'Non-insured Becoming insured', + 'description': 'Represents the transfer of an existing institution that does not have deposit insurance to a savings institution charter with FDIC insurance from BIF or SAIF. Examples of such institutions include Trust Banks and savings institutions with state deposit insurance that apply for and receive FDIC insurance' + }, + 'comboass': { + 'type': 'integer', + 'title': 'Assisted Mergers with Thrifts', + 'description': 'Represents the absorption of a failing savings institution by another savings institution with assistance from either the BIF or SAIF. (Included are RTC Accelerated Resolution Program (ARP) assisted mergers. These institutions were not placed in RTC conservatorship.)' + }, + 'combos': { + 'type': 'integer', + 'title': 'Unassisted Mergers/Consolidations of Thrifts', + 'description': 'Represents the absorption of a savings institution charter by another savings institution without assistance. Both institutions may be owned by the same holding company in a consolidation of affiliates.' + }, + 'CONS': { + 'type': 'integer', + 'title': 'RTC Conservatorships', + 'description': 'Institutions in RTC Conservatorship' + }, + 'CORPBNDS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Debt Securities', + 'description': 'Other Debt Securities' + }, + 'COUNT': { + 'type': 'integer', + 'title': 'Total Savings Institutions (Filing Y/E Call)', + 'description': 'All FDIC Insured Savings Institutions filing a 12/31 financial report' + }, + 'CRLNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loan & Lease Recoveries', + 'description': 'Total Recoveries Of Loans and Lease Financing Receivables Credited To The Allowance For Loan and Lease Losses\nNote: For Banks With Foreign Operations, Data For December\n1972 Through December 1975 Are Domestic Only' + }, + 'DDT': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - Domestic Demand', + 'description': 'Total Demand Deposits Included In Total Transaction Accounts Held In Domestic Offices\nNote: For Tfr Filers Between June 1989 Through March 1990 Includes Non-interest Bearing Deposits' + }, + 'DEP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Deposits', + 'description': 'Total Deposits On A Consolidated Basis\nNote:\n(1) Additional Detail Can Be Found On Schedule Rc-E\n(2) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'DEPDOM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Domestic Deposits', + 'description': 'Represents the sum of total deposits, domestic offices only' + }, + 'DEPFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Foreign Deposits', + 'description': 'Represents the sum of total deposits in foreign offices' + }, + 'DEPI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Interest Bearing Deposits', + 'description': 'Interest-Bearing Consolidated Office Deposits\n\nNote:\n(1) Additional Detail Can Be Found On Schedule Rc-E\n(2) Tfr Filers With Less Than $300 Million In Assets and Risk-Based Capital Ratios In Excess Of 12 Percent Are Not Required To File Schedule Cmr Beginning March 1993, However, When Cmr Data Is Either Incorrect Or Not Filed Fts Assumes That All Deposits Are Interest-Bearing\n(3) Prior To Receipt Of The 75-Day Tfr Tape All Tfr Filers Deposits Are Assumed To Be Interest-Bearing\n(4) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'DEPIFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Foreign Deposits - Interest Bearing', + 'description': 'Represents any deposit in foreign offices, whether demand, savings or time, on which the bank pays or accrues interest' + }, + 'DEPNI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Deposits - Non-interest Bearing', + 'description': 'Represents any deposit on which the bank does not pay or accrue interest' + }, + 'DEPNIFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Foreign Deposits - Non-interest Bearing', + 'description': 'Represents any deposit in foreign offices on which the bank does not pay or accrue interest' + }, + 'DRLNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loan & Lease Charge-offs', + 'description': 'Total Charged-Off Loans and Lease Financing Receivables Debited To The Allowance For Loan and Lease Losses\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EAMINTAN': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Amortization of Intangibles', + 'description': 'Goodwill Impairment Losses and Amortization Expense and Impairment Loss For Other Intangible Assets On A Consolidated Basis\n\nNote:\n(1) Prior To March 2001, Listed As Memoranda Only and Is Included In All Other Non-interest Expense\n(2) Includes Only Amortization Of Goodwill For Tfr Filers' + }, + 'EDEP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Total Deposits', + 'description': 'Interest Expense On Total Deposits (Domestic and Foreign) On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EDEPDOM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Deposit in Domestic Offices', + 'description': 'Interest Expense On Total Deposits Held In Domestic Offices\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EDEPFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Deposits in Foreign Offices', + 'description': 'Deposit Interest Expense-For (1976-Present -- Represents all interests on all liabilities reportable as deposits in foreign offices. -- 1934-1975 -- Interest on foregin office deposits is not available. Reports of income were submitted on a domestic only basis.)' + }, + 'EEREPP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Fed Funds Purchased/Securities Sold', + 'description': 'Represents the gross expenses of all liabilities reportable under this category' + }, + 'EFHLBADV': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp Oth - Advances From FHLB', + 'description': 'Interest Expense and The Amortization Of Any Related Yield Adjustments On Fhlbank Advances\nNote: Only Reported By Tfr Filers' + }, + 'EFREPP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Fed Funds Purchased/Securities Sold', + 'description': "Interest Expense On Federal Funds Purchased and Securities Sold Under Agreements To Repurchase On A Consolidated Basis (Prior To March 1997 Was On A Consolidated Basis In Domestic Offices Of The Bank and Of Its Edge and Agreement Subsidiaries, and In Ibf'S)\nNote: For Banks With Foreign Operations, Data For December\n1972 Through December 1975 Are Domestic Only" + }, + 'EINTEXP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Interest Expense', + 'description': 'Total Interest Expense On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December\n1972 Through December 1975 Are Domestic Only' + }, + 'EINTEXP2': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Eintexp2', + 'description': 'Eintexp2' + }, + 'ELNATR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Provision for Loan & Lease Losses', + 'description': 'Provision For Loan & Lease Losses On A Consolidated Basis\n\nNote:\n(1) Beginning March 2003, Includes The Provision For Allocated Transfer Risk Related To Loans\n(2) From March 1997 To December 2000, Defined As The Provision For Credit Losses & Allocated Transfer Risk Reserve Which Includes The Provision For Off-Balance Sheet Credit Losses For Call Report Filers\n(3) Prior To March 1997, Defined As The Provision For Loan and Lease Losses & Allocated Transfer Risk\n(4) For Tfr Filers, Consists Of The Provision For Loan and Lease Losses\n(5) Reflects Net Provision For Losses On Interest-Bearing Assets For Tfr Filers\n(6) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EOTHNINT': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Non-interest Expenses', + 'description': 'All Other Non-interest Expense On A Consolidated Basis\n\nNote:\n(1) Prior To March 2001, Included The Amortization Of Intangible Assets For Call Reporters\n(2) Greater Detail Is Provided In Subsequent Data Fields For All Items In Excess Of 10% Of This Item All Other Non-interest Expense On A Consolidated Basis\n(3) Does Not Include Losses On Asset Sales For Tfr Filers Beginning June 1996, Such Gains (Losses) Are Included Net In Non-interest Income\n(4) Includes Loss On Sale Of Securities Held For Investments For Tfr Filers Between March 1984 Through December 1986\n(5) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EPREMAGG': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Occupancy Expense', + 'description': 'Expenses Of Premises and Fixed Assets (Net Of Rental Income and Excluding Salaries and Employee Benefits and Mortgage Interest) On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EQ': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Equity', + 'description': 'Represents the sum of all capital accounts' + }, + 'EQCDIV': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Cash Dividends Declared', + 'description': 'Cash Dividends Declared On Common and Preferred Stock On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EQCDIVC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Cash Dividends Declared (Common)', + 'description': 'Cash Dividends Declared On Common Stock On A Consolidated Basis\n\nNote:\n(1) 034 Reporters Only File Data On The December Call\n(2) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EQCDIVP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Cash Dividends Declared (Preferred)', + 'description': 'Cash Dividends Declared On Preferred Stock On A Consolidated Basis\nNote:\n(1) 034 Reporters Only File Data On The December Call\n(2) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EQCS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Common Stock', + 'description': 'Common Stock On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'EQDIV': { + 'type': 'integet', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Cash Divident Declared', + 'description': 'The total of cash dividends declared on all preferred and common stock during the calendar year, regardless of when payable' + }, + 'EQNM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Equity Capital', + 'description': 'Total Capital (Represents the total of all capital components, including FDIC net worth certificates.)' + }, + 'EQNWCERT': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'FDIC Net Worth Certificates', + 'description': 'Net Worth Certificates Represents The Outstanding Balances Issued To The Fdic In Exchange For Promissory Notes Received From The Fdic On A Consolidated Basis' + }, + 'EQOTHCC': { + 'type': 'integer', + 'title': 'Other Capital', + 'description': 'Other Capital' + }, + 'EQPP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Perpetual Preferred Stock', + 'description': 'Perpetual Preferred Stock and Related Surplus On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'EQSUR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Surplus', + 'description': 'Surplus (Excludes All Surplus Related To Preferred Stock) On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis\n' + }, + 'EQUPTOT': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Undivided Profits', + 'description': 'Undivided Profits, Capital Reserves, Net Unrealized Holding Gains (Losses) On Available-For-Sale Securities and Other Equity Capital Components and/Or\nAccumulated Gains (Losses) On Cash Flow Hedges On A Consolidated Basis\n\nNote:\n(1) Prior To March 1999 Included Undivided Profits, Capital Reserves and Net Unrealized Gains (Losses) On Available-For-Sale Securities\n(2) Prior To March 1994 Included Undivided Profits and Capital Reserves Less Net Unrealized Loss On Marketable Equity Securities\n(3) This Item Includes Net Worth Certificates For Bif Thrifts\n(4) For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'ESAL': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Employee Salaries and Benefits', + 'description': 'Salaries and Employee Benefits On A Consolidated Basis Note: For Banks With Foreign Operations, Data For December 72 Through December 1975 Are Domestic Only' + }, + 'ESUBND': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Subordinated Notes', + 'description': 'Interest Expense On Subordinated Notes and Debentures On A Consolidated Basis\nNote:\n1. This Item Is Not Reported By Form 51 Filers\n2. For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'EXTRA': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Extraordinary Items', + 'description': 'Discontinued Operations, Net Of Applicable Income Taxes On A Consolidated Basis\n\nNote:\n(1) Prior To March 2016, Defined As Extraordinary Items and and Other Adjustments, Net Of Taxes On A Consolidated Basis\n(2) This Item Does Not Include The Tax Effects Related To Securities Gains and Losses and Extraordinary Items From June 1984 Through December 1985 For Bif Thrifts (Refer To Applicable Income Taxes)\n(3) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'FD_BIF': { + 'type': 'integer', + 'title': 'FDIC Supervised, BIF Insured Institutions', + 'description': 'FDIC Supervised, BIF Insured Institutions' + }, + 'FD_SAIF': { + 'type': 'integer', + 'title': 'FDIC supervised, SAIF Insured Institutions', + 'description': 'FDIC supervised SAIF insured institutions' + }, + 'FREPO': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Federal Funds Sold', + 'description': "Federal Funds Sold and Securities Purchased Under Agreements To Resell On A Consolidated Basis\n\nNote:\n(1) Prior To March 1997, Includes Only Federal Funds Sold and Securities Purchased Under Agreements To Resell In Domestic Offices Of The Bank and Of Its Edge and Agreement Subsidiaries, and In Ibf'S\n(2) Prior To March 1998, Includes Only Federal Funds Sold For Tfr Filers\n(3) For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Was Reported On A Domestic Basis" + }, + 'FREPP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Fed Funds & Repos Purchased', + 'description': 'Federal Funds Purchased and Securities Sold Under Agreements To Repurchase On A Consolidated Basis \nNote:\n(1) Prior To March 1998, Includes Only Reverse Repurchase Agreements For Tfr Filers\n(2) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'ICHBAL': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Balances Due', + 'description': 'Total Interest Income On Balances Due From Depository Institutions On A Consolidated Basis' + }, + 'IFEE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Fee Income', + 'description': 'Fee Income (Represents service charges on deposit accounts such as maintenance fees, activity charges, administrative charges, overdraft charges and check certification charges; mortgage loans servicing fees plus other fees and charges, including prepayment loan fees, late charges, assumption fees, and amortization of commitment fees.)' + }, + 'IFREPO': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Fed Funds Sold/Securities Purchased', + 'description': 'Interest Income On Federal Funds Sold and Securities Purchased Under Agreements To Resell On A Consolidated Basis\nNote:\n(1) Prior To March 1997 Included Only Income From Domestic Offices Of The Bank and Of Its Edge and Agreement Subsidiaries, and In Ibfs On A Consolidated Basis\n(2) For Banks With Foreign Operations Data For December 1972 Through 1975 Are Domestic Only' + }, + 'IGLSEC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Securities Gains and Losses', + 'description': 'Realized Gains (Losses) On Held-To-Maturity and Available-For-Sale Debt Securities and Unrealized Holding Gains (Losses) On Equity Securities Not Held For Trading Before Adjustments For Income Taxes On A Consolidated Basis (Also Includes Realized Gains On Equity Securities Until The Institution Adopts Asu 2016-01)\nNote:\n1. Prior To March 2018, Defined As Realized Gains (Losses) On Held-To-Maturity and Available-For-Sale Securities Before Adjustments For Income Taxes On A Consolidated Basis\n2. Beginning In The 2018 Reporting Year, Includes Unrealized Gains (Losses) On Equity Securities For Institutions That Adopted Asu2016-01 and Includes Realized Gains (Losses) On Equity Securities For Institutions That Have Not Yet Adopted Asu2016-01\n3. Prior To March 1994 Defined As Gains (Losses) On Securities Not Held In Trading Accounts \n4. From March 1990 Through March 2009, Includes Gains (Losses) On Assets Held For Sale For Tfr Filers\n5. Includes Gains (Losses) On Loans Held For Investment From March 1984 Through December 1989 For Tfr Filers\n6. Tfr Filers Report Only Gains From March 1984 Through December 1986\n7. For Banks With Foreign Operations Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'ILNDOM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Domestic Office Loans', + 'description': 'Total Interest and Fees On Loans Held In Domestic Offices\nNote:\n(1) U-Size-Stratum = 0001 Means That Bank Has Total Assets Less Than $25 Million\n(2) U-Size-Stratum = 0002 Means That Bank Has Total Assets Equal To Or Greater Than $25 Million\n(3) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'ILNFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Foreign Office Loans', + 'description': "Total Interest and Fees On Loans Held In Foreign Offices, Edge and Agreement Subsidiaries, and Ibf'S" + }, + 'ILNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Total Loans & Leases', + 'description': 'Interest and Fees On Loans and Lease Financing Receivables On A Consolidated Basis\nNote:\n(1) U-Size-Stratum = 0001 Means That Bank Has Total Assets Less Than $25 Million\n(2) U-Size-Stratum = 0002 Means That Bank Has Total Assets Equal To Or Greater Than $25 Million\n(3) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'ILNS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Loans', + 'description': 'Loans (Represents all interest, fees and similar charges levied against or associated with all assets reportable as loans. Includes interest, yield related fees, commitment fees, service charges on loans and discount accretion. (One savings bank with an office in Canada has been reporting on the Domestic & Foregin Consolidated Call Report form (FFIEC 031). It does not, however, indicate any income or expenses related to foregin operations.))' + }, + 'ILS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Leases', + 'description': 'Total Interest Income From Lease Financing Receivables On A\nConsolidated Basis' + }, + 'INTAN': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Intangible Assets', + 'description': 'Intangible Assets On A Consolidated Basis' + }, + 'INTBAST': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Interest Earning Assets', + 'description': 'Total Interest Earning Assets (Derived See Si-19) - Sc' + }, + 'INTBLIB': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Interest Bearing Liabilities', + 'description': 'Total Interest Bearing Liabilities (Derived See Si-19) - Sc' + }, + 'INTINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Interest Income', + 'description': 'Total Interest Income On A Consolidated Basis\nNote: For Banks With Foreign Operations Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'INTINC2': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'INTINC2', + 'description': 'INTINC2' + }, + 'IRAKEOGH': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': "Memo: IRA's and Keogh Plan-Deposits", + 'description': "Individual Retirement Accounts (Ira'S) and Keogh Plan\nAccounts Held In Domestic Offices\nNote: Listed As Memoranda Only" + }, + 'ISC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Investment Securities', + 'description': 'Total Interest and Dividend Income On: U.S. Treasury Securities, U.S. Government Agency and Corporation Obligations, Securities Issued By States and Political\nSubdivision In The U.S., Other Domestic Debt Securities, Foreign Debt Securities, and Equity Securities (Including Investments In Mutual Funds) On A Consolidated Basis\nNote:\n(1) This Item Includes Interest Income On Deposits For Tfr Filers\n(2) Includes Interest Income On Assets Held In Trading Accounts For Tfr Filers For Two Distinct Periods: (A) March 1984 Through December 1989 and (B) June 1996\nAnd Following Quarters.\n(3) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'ISERCHG': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Service Charges on Deposit Accounts', + 'description': 'Represents service charges on deposit accounts in domestic offices such as maintenance fees, activity charges, administrative charges, overdraft charges, and check certification charges' + }, + 'ITAX': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Applicable Income Taxes', + 'description': 'Represents Federal, state and local taxes on income. It does not include taxes relating to securities transactions or extraordinary items' + }, + 'ITAXR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Pre-Tax Net Operating Income', + 'description': 'Pre-Tax Net Operating Income (Represents Net Interest Income plus Total Non-interest Income less Total Non-interest Expense and the Provision for Loan & Lease Losses.)' + }, + 'ITRADE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Trading Account Assets', + 'description': 'Interest Income From Assets Held In Trading Accounts On A Consolidated Basis \nNote:\nBeginning March 2017, Reported As An Individual Income Category For Form 031 Filers Only and Is Included As A Component Of Other Interest Income For All Other Report Forms' + }, + 'LIAB': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Liabilities', + 'description': 'Total Liabilities Including Subordinated Notes and Debentures and Limited Life Preferred Stock and Related Surplus On A Consolidated Basis\nNote: Prior To March 2009, This Item Included Noncontrolling (Minority) Interests In Consolidated Subsidiaries For Call Report and Tfr Filers' + }, + 'LIABEQ': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Liabilities and Equity Capital', + 'description': 'Total Liabilities, Limited-Life Preferred Stock, and Equity Capital On A Consolidated Basis Note: For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'liqasstd': { + 'type': 'integer', + 'title': 'Assisted Payouts', + 'description': 'Represents all assisted payouts of FDIC-insured savings institutions that are not in RTC conservatorship.' + }, + 'liqunass': { + 'type': 'integer', + 'title': 'Voluntary Liquidations', + 'description': 'Represents all instances where the owners of a thrift voluntarily surrender their charter with all liabilities including deposits paid down and all assets sold.' + }, + 'LNAG': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Agricultural Loans', + 'description': 'Loans To Finance Agricultural Production and Other Loans To Farmers On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For All Periods Form December 1972 Through September 1978 Are Domestic Only' + }, + 'LNALLOTH': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Loans to Individuals', + 'description': 'All Other Loans (1969-Present -- Represents Federal funds purchased, securities sold under agreements to repurchase, demand notes issued to the US Treasury, mortgage indebtedness, liabilities under capitalized leases and all other liabilities for borrowed money. -- 1934-1968 -- Does not include mortgage indebtedness which is netted against bank premises.)' + }, + 'LNATRES': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Allowance for Losses Loans and Leases', + 'description': 'Allowance For Loan and Lease Financing Receivable Losses and Allocated Transfer Risk On A Consolidated Basis\nNote:\n(1) From March 2001 To Dec 2002 Allocated Transfer Riskis Netted From Loans & Not Included As Part Of The Reserve\n(2) Additional Detail Can Be Found On Schedule Ri-B\n(3) For Tfr Filers Between March 1984 Through December 1989 Includes Allowance For Mortgage Pool Securities\n(4) For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Was Reported On A Domestic Basis' + }, + 'LNAUTO': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Loans to Individuals - Auto', + 'description': 'Represents installment loans to purchase private passenger automobiles, both direct loans and purchased paper' + }, + 'LNCI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Commercial and Industrial Loans', + 'description': 'Commercial and Industrial Loans On A Consolidated Basis Note: For Banks With Foreign Operations, Data For All Periods From December 1972 Through September 1978 Are Domestic Only' + }, + 'LNCON': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Loans to Individuals', + 'description': 'Loans To Individuals For Household, Family, and Other Personal Expenditures (Consumer Loans) On A Consolidated Basis\nNote:\n(1) For Tfr Filers Includes Revolving Loans Secured By 1-4 Family Dwelling Units From March 1984 Through March 1988\n(1) For Banks With Foreign Operations, Data For All Periods From December 1972 Through September 1978 Are Domestic Only' + }, + 'LNCONOT1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans to Individuals - Home Improvement', + 'description': 'Installment Loans To Individuals To Repair and Modernize\nResidential Property Held In Domestic Offices' + }, + 'LNCONOTH': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans to Individuals - All Others', + 'description': 'Represents all other loans to individuals for household, family and other personal expenditures. It includes auto loans, both direct and indirect, mobile homes (unless secured by a real estate mortgage), education loans, other installment loans both secured by personal property or unsecured, and single payment loans (time or demand, secured or unsecured)' + }, + 'LNCRCD': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans to Individuals - Credit Card Plans', + 'description': 'Credit Cards Related Plans On A Consolidated Basis\n\nNote:\n(1)Prior To March 2001 Includes Credit Cards Related Plans-Loans To Individuals For Household, Family, and Other Personal Expenditures (Consumer Loans) Includes Check Credit and Other Revolving Credit Plans\n(2) For Tfr Filers Between March 1984 Through March 1988 This Figure Includes Home Equity Loans Based On The Creditworthiness Of The Borrower (T-Sc340)\n(3) For Banks With Foreign Operations, Data For All Periods From December 1972 Through September 1978 Are Domestic Only' + }, + 'LNDEP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans to Deposit Institutions', + 'description': 'Loans To Depository Institutions On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For All Periods From December 1972 Through September 1978 Are Domestic Only\nNote:(1) Beginning March 2001 Includes Acceptances Of Other Banks\n(2) Beginning March 2001, Includes Acceptances Of Other Banks For Ibas' + }, + 'LNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Gross Loans and Leases', + 'description': 'Represents the sum of all components of loans' + }, + 'LNLSGR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Loans and Leases', + 'description': 'Loans and Lease Financing Receivables, Net Of Unearned Income, On A Consolidated Basis\nNote:\n(1) Additional Detail Can Be Found On Schedule Rc-C\n(2) For Tfr Filers This Item Is Net Of Unamortized Yield Adjustments For Mortgage Pool Securities From March 1984 Through December 1989\n(3) For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Was Reported On A Domestic Basis' + }, + 'LNLSNET': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Loans and Leases', + 'description': 'Loans and Lease Financing Receivables, Net Of Unearned Income, Allowance, and Reserve On A Consolidated Basis\nNote:\n(1) For Tfr Filers This Item Is Net Of Valuation Allowances and Unamortized Yield Adjustments For Mortgage Pool Securities From March 1984 Through\n(2) For Banks With Foreign Operations, Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'LNMOBILE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Loans to Individuals - Mobile Homes', + 'description': "Represents loans to individuals to purchase mobile homes. (If the bank's security interest in the loan was represented by a mortgage or deed of trust, the loan should be included in real estate loans)" + }, + 'LNMUNI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans to States and Politicial Sub-divisions', + 'description': 'Obligations (Other Than Securities and Leases) Of States and Political Subdivisions In The U.S. (Including Nonrated Industrial Development Obligations) On A Consolidated Basis' + }, + 'LNRE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Real Estate Loans', + 'description': 'Loans Secured By Real Estate On A Consolidated Basis\nNote:\n(1) For Tfr Filers Between March 1984 Through March 1988 This Figure Excludes Home Equity Loans Based On The Creditworthiness Of The Borrower (T-Sc340)\n(2) For Banks With Foreign Operations, Data For All Periods From December 1972 Through September 1978 Are Domestic Only' + }, + 'LNREAG': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'R/E Loan - Farmland', + 'description': 'Represents loans secured by farmland, including improvements, and other land known to be used or usable for agricultural purposes, as evidenced by mortgages or other liens. It includes loans secured by farmland that are guaranteed by the Farmers Home Administration (FHA) or by the Small Business Administration' + }, + 'LNRECONS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'R/E Loan - Construction & Land Develop', + 'description': 'Construction and Land Development Loans Secured By Real Estate Held In Domestic Offices\nNote: For Tfr Filers Portions Of Lnrecons Were Included In Other Real Estate Loan Categories Prior To March 30, 1986' + }, + 'LNREDOM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total R/E Loans in Domestic Offices', + 'description': 'Represents the total of all loans secured by real estate in domestic offices (U.S. and other areas)' + }, + 'LNREFOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total R/E Loans in Foreign Offices', + 'description': 'Represents all loans secured by real estate in foreign offices' + }, + 'LNRELOC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Home Equity Loans', + 'description': 'Revolving, Open-End Loans Secured By 1-4 Family Residential Properties and Extended Under Lines Of Credit Held In Domestic Offices' + }, + 'LNREMULT': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'R/E Loans - Multifamily', + 'description': 'Multifamily (5 Or More) Residential Properties Secured By Real Estate Held In Domestic Offices' + }, + 'LNRENRES': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'R/E Loan - Non-farm/Non-residential Prop', + 'description': 'Nonfarm Nonresidential Properties Secured By Real Estate Held In Domestic Offices\nNote: For Tfr Filers This Figure Includes Mortgages On Properties That Are Used For Farming' + }, + 'LNRERES': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'R/E Loan - 1-4 Family', + 'description': 'Total Loans Secured By 1-4 Family Residential Properties Held In Domestic Offices\nNote: For Tfr Filers Between March 1984 Through March 1988 This Figure Excludes Home Equity Loans Based On The Creditworthiness Of The Borrower' + }, + 'LNRESRE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Contra Account', + 'description': 'Allowance For Loan Losses On Real Estate Loans On A Consolidated Basis\nNote: For Tfr Filers Includes Allowance For Mortgage Pool Securities Between March 1984 Through December 1989' + }, + 'LNSP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Loans to Individuals - Single Payment', + 'description': 'All loans both time or demand, secured or unsecured, to individuals for personal, family or other household expenditures' + }, + 'LS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Leases', + 'description': 'Lease Financing Receivables (Net Of Unearned Income) On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For March & September Call Dates Are Domestic Only Through December 1975' + }, + 'MERGERS': { + 'type': 'integer', + 'title': 'Failures: Assisted Merger', + 'description': 'Mergers, consolidations or absorptions entered into as a result of supervisory actions. The transaction may or may not have required FDIC assistance.' + }, + 'MISSADJ': { + 'type': 'integer', + 'title': 'Other Misc. Adjustments', + 'description': 'Represents any FDIC-insured savings institution that did not file a financial report during the year in which the charter was added or deleted.' + }, + 'MTGLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Mortgage and Other Borrowings', + 'description': 'Represents mortgage indebtedness and liabilities under capitalized leases' + }, + 'NALNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Non-accrual Loans & Leases', + 'description': 'Total Nonaccrual Loans and Lease Financing Receivables On A Consolidated Basis' + }, + 'NCHGREC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Loans and Leases Charge-offs', + 'description': 'Net Loans and Leases Charge Offs (-- 1984-1989 -- Represents Loan and Lease Charge-offs less Loan and Lease Recoveries. An amount enclosed in paraentheses indicates net recoveries. Not collected by TFR filers. -- 1990-Present -- Represents Loan and Lease Charge-offs less Loan and Lease Recoveries. An amount enclosed in paraentheses indicates net recoveries.)' + }, + 'NCLNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Non-current Loans & Leases', + 'description': 'Total Loans and Lease Financing Receivables 90 Days Or More Past Due and Nonaccrual On A Consolidated Basis\nNote: Includes Delinquent Loans (60 Or More Days Overdue) and Past Due Loans (One Or More Payments Missed) For Tfr Filers Prior To March 1990' + }, + 'NETINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Income', + 'description': 'Net Income Attributable To The Bank On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'newcount': { + 'type': 'integer', + 'title': 'New Charters', + 'description': 'Institutions newly chartered by federal or state banking authorities including authorities in the U. S. Territories or possessions.' + }, + 'New_Char': { + 'type': 'integer', + 'title': 'New Charters', + 'description': 'Institutions newly licensed or chartered by the Office of the Comptroller of the Currency (national banks) or by state banking authorities, including banking authorities in the U. S. territories or possessions. Includes de novo institutions as well as charters issued to take over a failing institution.' + }, + 'NEW6_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Borrowed Money', + 'description': 'Represents interest expense related to demand notes issued to the U. S. Treasury, mortgage indebtedness, obligations under capitalized leases, and other borrowed money' + }, + 'NEW9_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Assets', + 'description': "Represents all other assets not included in previously mentioned captions. Includes, for the most part, customers' liabilities on acceptances outstanding, income earned not collected as well as any other asset not included above" + }, + 'NEW10_1': { + 'type': 'integer', + 'title': 'Corporate Bonds and Other Securities', + 'description': "Represents all securities, bonds, notes and debentures of domestic and foreign corporations. Also includes privately issued or guaranteed mortgage backed securities and certain detached U.S. Government security coupons held as a result of either their purchase or the bank's stripping them (CATS, TIGRs, COUGARs, LIONs and ETRs)." + }, + 'NEW10_2': { + 'type': 'integer', + 'title': 'Trading Account Securities', + 'description': 'Securities within the scope of ASC Topic 320, Investments – Debt Securities, that a bank has elected to report at fair value under a fair value option with changes in fair value reported in current earnings should be classified as trading securities. (https://www.fdic.gov/regulations/resources/call/crinst/2018-06/031-041-618rc-d-063018.pdf)' + }, + 'NEW10_3': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Valuation Reserves', + 'description': 'For all years except 1969-1973, investment securities are reflected net of general valuation reserves. Specific reserves are deducted from each security so reserved' + }, + 'NEW11_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Loans', + 'description': "Represents unplanned overdrafts and loans to: brokers and dealers in securities, any borrower for the purpose of purchasing and carrying securities, nonprofit institutions and organizations, individuals for investment purposes, real estate investment trusts, mortgage companies holding companies of depository institutions, insurance companies, finance companies, factors and other financial intermediaries, federally sponsored lending agencies, investment banks, the bank's own trust department, Small Business Investment Companies, foreign governments and official institutions, and any other loan not included in one of the above categories" + }, + 'NEW14_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Borrowed Funds', + 'description': 'Represents Federal funds purchased, securities sold under agreements to repurchase, demand notes issued to the US Treasury, mortgage indebtedness, liabilities under capitalized leases and all other liabilities for borrowed money' + }, + 'NEW14_2': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Liabilities', + 'description': 'Includes all liabilities not included above and limited life preferred stock' + }, + 'NEW14_3': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Liabilities', + 'description': 'Represents the total of all components of liabilities' + }, + 'NEW14_4': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Undivided Profits', + 'description': 'Represents undivided profits and related accounts' + }, + 'NEW15_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - Individuals, Partnerships and Corporations', + 'description': 'Represents all deposits of individuals, partnerships and corporations in domestic and foreign offices' + }, + 'NEW15_2': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - U.S. Government', + 'description': 'Represents all deposits of individuals, partnerships and corporations in domestic and foreign offices' + }, + 'NEW15_3': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - States and Political Subdivisions', + 'description': 'Represents all deposits of states, counties and municipalities in domestic offices. Such deposits, if any, in foreign offices are not separately reported' + }, + 'NEW15_4': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - All Other', + 'description': 'Represents all other deposits. Includes deposits of financial institutions, both domestic and foreign, deposits of foreign governments and official institutions and certified and official checks. Also includes deposits in foreign offices other than those of individuals, partnerships and corporations' + }, + 'NEW15_5': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - Domestic Savings', + 'description': 'Represents all savings deposits in domestic offices' + }, + 'NEW15_7': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Domestic Deposits', + 'description': 'Total Domestic Deposits' + }, + 'NEW16_1': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Demand Notes and Other Liabilities', + 'description': 'Represents demand notes issued to the U.S. Treasury (Treasury tax & loan account), and all other borrowings. Includes mortgage indebtedness and liabilities under capitalized leases for Call report filers. Includes FSLIC net worth certificates for TFR filers' + }, + 'NEW16_2': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Interest Bearing Deposits', + 'description': 'Represents any deposit in domestic and foreign offices on which the banks pays or accrues interest' + }, + 'NIM': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Interest Income', + 'description': 'Net Interest Income (Total Interest Income Minus Total Interest Expense) On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'NONII': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Non-interest Income', + 'description': 'Total Non-interest Income On A Consolidated Basis\nNote:\n(1) From March 1990 Through March 2009, Excludes Gains (Losses) On Assets Held For Sale For Tfr Filers, See Tfr Instructions For So430\n(2) Excludes Gains On The Sale Of Loans Held For Investments From March 1984 Through December 1989 For Tfr Filers\n(3) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'NONIX': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Non-interest Expense', + 'description': 'Total Non-interest Expense On A Consolidated Basis\nNote:\n(1) Excludes Losses On Asset Sales For Tfr Filers Beginning June 1996\n(2) Includes Loss On Sale Of Mortgage Pool and Other Securities Held For Investment For Tfr Filers From March 1984 Through December 1986\n(3) Excludes Losses On Loans Held For Investment For Tfr Filers From March 1987 Through December 1989\n(4) For Banks With Foreign Operations, Data For December 1972 Through December 1975 Are Domestic Only' + }, + 'NTLNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Net Loan & Lease Charge-offs', + 'description': 'Represents Loan and Lease Charge-offs less Loan and Lease Recoveries. An amount enclosed in parentheses indicates net recoveries. Not collected by TFR filers' + }, + 'NTR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Domestic Deposits Non-Transaction', + 'description': "Represents deposits that are not included in the definition of transaction accounts above or that do not satisfy the criteria necessary to be defined as a transaction account. MMDA's are specifically defined as nontransaction accounts" + }, + 'NTRTIME': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Deposits - Domestic Time', + 'description': 'Represents all time certificates of deposit, time open accounts and similar deposits in domestic offices' + }, + 'NTRTMLG': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Time Deposits (Over $100K)', + 'description': 'Time Deposits Over $100,000 Or More Held In Domestic Offices\nNote:\n(1) Listed As Memoranda Only and Is Included In Total Nontransaction Accounts\n(2) Prior To March 2007, Includes All Deposits (Not Just Time) Greater Than $100,000 For Tfr Filers. Except For December 2006, Includes All Nonretirement Deposits Over\n$100,000 and All Retirement Deposits Over $250,000 For Tfr Filers\n(3) Includes Time Deposits Of $100,000 Or More' + }, + 'NUMEMP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Number of Full Time Employees', + 'description': 'Number Of Full Time-Equivalent Employees On Payroll At The End Of The Current Period\nNote:\n(1) Listed As Memoranda Only\n(2) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'OEA': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Earning Assests', + 'description': 'Other Earning Assests (-- 1984-1989 -- Represents Federal funds sold and securities purchased under agreements to resell (repurchase agreements). Items not separately reported by TFR filers. They are included in Secruties. -- 1990-Present -- Represents Federal funds sold and securities purchased under agreements to resell (repurchase agreements). Includes only Federal funds sold for TFR filers. Repurchase agreements are included in Securities.)' + }, + 'OFFICES': { + 'type': 'integer', + 'title': 'Offices', + 'description': 'Offices include: Multiple service offices, Military facilities, Drive-in facilities, Loan production offices, Consumer credit offices, Seasonal offices, Administrative offices, Messenger service offices, Supermarket banking offices, and Other offices.' + }, + 'OINTBOR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Demand Notes and Other Borrowings', + 'description': 'Demand Notes and Other Borrowings (Represents demand notes issued to US Treasury (Treasury tax & loan account), and all other borrowings. Includes mortgage indebtedness and liabilities under capitalized leases for Call report filers. Includes FSLIC net worth certificates for TFR filers.)' + }, + 'OINTEXP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Other Interest Expenses', + 'description': 'Total Other Interest Expenses (Federal Funds Purchased and Securities Sold -- Represents the gross expense of all liabilities reportable under this category. This item is not reported separately by TFR filers. It is included in Borrowed Money).' + }, + 'OINTINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Total Other', + 'description': 'Total Other Interest Income (Represents the total of all Other Interest Income components).' + }, + 'OONONII': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Non-interest Income', + 'description': 'Other Non Interest Income (1984-1989 -- Same as Total Other Interest Income except gains on the sale of loans held for investment are excluded for TFR filers. -- 1990- Present -- Represents income derived from the sale of assets held for sale; office building operations; real estate held for investment; REO operations; LOCOM adjustments made to assets held for sale; net income (loss) from investements in service corporations/subsidiaries (other than operating or finance subsidiaires); leasing operations; realized and unrealized gains (losses) on trading assets; gains on the sale of REO real estate held for investment, and loans held for investment; and the amoritization of deferred gains (losses) on asset hedges.)' + }, + 'ORE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Real Estate Owned', + 'description': 'Other Real Estate Owned On A Consolidated Basis\nNote:\n(1) Prior To June 2009, Includes Direct and Indirect Investments In Real Estate\n(2) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Was Reported On A Domestic Basis' + }, + 'ORET': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Real Estate', + 'description': 'Other Real Estate (Represents other real estate owned net of reserves for losses). Not available for 1997. For 1986 through 1988 ORET = ORE + INVSUORE; for all other years ORET = ORE' + }, + 'OT_BIF': { + 'type': 'integer', + 'title': 'Non FDIC Supervised BIF Insured Institutions', + 'description': 'Non FDIC supervised BIF insured institutions' + }, + 'OT_SAIF': { + 'type': 'integer', + 'title': 'Non FDIC Supervised SAIF Insured Institutions', + 'description': 'Non FDIC supervised SAIF insured institutions' + }, + 'OTHASST': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'All Other Assets', + 'description': 'All Other Assets (Same as Other Real Estate except that investment in service corporations/subsidiaries is reported gross of valuation allowances by TFR filers, and assets held in trading accounts are included in Securities for TFR filers. -- 1990-Present -- Represents all associations assets not previously mentioned. Includes all non real estate repossessed property, investment in service corporations/subsidiaries, property leased to others, income earned but not yet collected, assets held in the trading accounts, and miscellaneous assets) For 2009- present OTHASST = SUM (INVSUB + INVSUORE + CUSLI + OA)' + }, + 'OTHBFHLB': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Advances from FHLB', + 'description': 'Other Liabilities From The Fhlb\nNote:Prior To March 2001 Only Reported On Tfrs' + }, + 'OTHBORR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp Oth - Borrowed Money', + 'description': 'Borrowed Money (Represents interest expense related to demand notes issued the US Treasury, mortage indebtedness, obligations under capitalized leases and on other borrowed money.' + }, + 'OTHEQ': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Equity', + 'description': 'Represents all equity securities not held for trading: investment in mutual funds, common stock of FNMA, Student Loan Marketing Association, Federal Home Loan Mortgage Corporation, Federal Reserve Bank stock, Federal Home Loan Bank stock, minority interests not meeting the definition of associated companies, "restricted" stock, and other equity securities in both domestic and foreign corporations\n' + }, + 'OTHER': { + 'type': 'integer', + 'title': 'Other', + 'description': 'Withdrawals from FDIC insurance, voluntary liquidations, or conversions to institutions that are not considered commercial banks. Also includes relocation of banks from one state to another.' + }, + 'OTHLIAB': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Other Liabilities', + 'description': 'Other Liabilities (Includes all liabilities not included above and limited life preferred stock. 2001- present -- Includes OTHER LIAB & MINOR IN SUBS).' + }, + 'OTHNBORR': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Borrowed Funds', + 'description': 'Borrowed Funds (Includes federal funds purchased, securities sold under agreements to repurchase (reverse repurchase agreements), demand notes issued to the US Treasury, mortgage indebtedness, liabilities under capitalized leases and all other liabilities for borrowed money. Includes only reverse purchase agreements (securities sold under agreements to repurchase) and FSLIC net worth certificates for TFR filers)' + }, + 'OTLNCNTA': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Less: Other Contra Accounts', + 'description': 'Other Contracts (Represents amount reported by savings institutions that file on the Thrift Financial Report. Contra accounts include accrued interest receivable, unamortized yield adjustments and valuation allowances. Negative amounts reflect unamortized premiums and deferred direct costs exceeding unamortized discounts and deferred loan fees).' + }, + 'PAID_OFF': { + 'type': 'integer', + 'title': 'Failures: Paid Off', + 'description': 'Institutions that were declared insolvent, the insured deposits of which were paid by the FDIC.' + }, + 'P3LNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans & Leases P/D 30-89 Days', + 'description': 'Total Loans and Lease Financing Receivables Past Due 30 Through 89 Days and Still Accruing Interest On A Consolidated Basis\nNote:\n(1) Prior To March 2001,This Information On An Institution Level Is Considered Confidential By The Ffiec' + }, + 'P9LNLS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Loans & Leases P/D 90+ Days', + 'description': 'Total Loans and Lease Financing Receivables Past Due 90 Or More Days and Still Accruing Interest On A Consolidated Basis' + }, + 'PTXNOINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Pre-Tax Net Operating Income', + 'description': 'Pre-Tax Net Operating Income' + }, + 'REL_CO': { + 'type': 'integer', + 'title': 'Conversions', + 'description': 'Conversions of existing institutions of any type that meet the definition of commercial banks (see Definition of Total Commercial Banks and have applied for and received FDIC insurance. Also includes bank relocations from one state to another.' + }, + 'SAVINGS': { + 'type': 'integer', + 'title': 'Total Savings Institutions (Total Insured)', + 'description': 'Total Insured Savings Institutions including institutions that did not file a 12/31 fincncial report and other adjustments (See Notes to User).' + }, + 'SC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Investment Securities (Book Value)', + 'description': 'Total Securities: The Sum Of Held-To-Maturity Securities At Amortized Cost, Available-For-Sale Securities At Fair Value and Equity Securities With Readily Determinable Fair Values Not Held For Trading On A Consolidated Basis\nNote:\n1. Prior To March 2018, Defined As Total Held-To-Maturity At Amortized Cost and Available-For-Sale At Fair Value Securities (Excludes Assets Held In Trading Accounts) On A Consolidated Basis\n2. Beginning In 2018, Includes Equity Securities For Institutions That Have Adopted Asu2016-01 and Those Institutions That Have Not Yet Adopted This Accounting\nStandard\n3. Prior To March 1994 Item Defined As Book Value\n4. Additional Detail Can Be Found On Schedule Rc-B\n5. For Tfr Filers Between March 1984 Through December 1989 Includes Interest-Earning Deposits In Fhlbs, Other Interest-Earning Deposits, Federal Funds Sold and Assets Held In Trading Accounts\n6. For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis' + }, + 'SCAGE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'U.S. Agencies and Corporation Securities', + 'description': 'Total U.S. Government Agency and Corporation Obligations On A Consolidated Basis\nNote:\n1) From June 2009 Through December 2010, This Item Excluded Other Commercial\nMortgage-Backed Securities\n2) Prior To June 2009, This Item Included Other Commercial Mortgage-Backed Securities\n3) Beginning March 1994 Consists Of Held-To-Maturity At Amortized Cost and Available-For-Sale At Fair Value Securities\n4) Includes The Aforementioned Securities Held In Trading Accounts For Tfr Filers\n5) Includes U.S. Treasury Securities For Tfr Filers Between March 1984 Through December 1989 and After March 1996\n6) Does Not Include Mortgage Derivative Securities For Tfr Filers Between March 1984 Through December 1986\n7) For Banks With Foreign Operations, Data For March & September Of 1973 Through 1975 Are Reported On A Domestic Basis' + }, + 'SCEQ': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Equity Securities', + 'description': 'Total Equity Securities Available-For-Sale At Fair Value On A Consolidated Basis\nNote:\n(1) Beginning March 2018 Does Not Include Equity Securities For Institutions That Have Adopted Asu 2016-01 See Sceqfv\n(2) Includes The Aforementioned Securities Held In Trading Accounts For Tfr Filers' + }, + 'SCMTGBK': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Mortgage Backed Securities', + 'description': 'Mortgage Backed Securities On A Consolidated Basis\nIncludes:\n(1) U.S. Government Agency and Corporation Obligations Issued Or Guaranteed Certificates Of Participation In Pools Of Residential Mortgages,\n(2) U.S. Government Agency and Corporation Obligations Collateralized Mortgage Obligations Issued By Fnma and Fhlmc (Including Remics)\n(3) Other Domestic Debt Securities - Private (I.E., Non-Government-Issued-Or-Guaranteed) Certificates Of Participations In Pools Of Residential Mortgages, and\n(4) Other Domestic Debt Securities - Privately-Issued Collateralized Mortgage Obligations (Including Remics)' + }, + 'SCMUNI': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'States and Political Subdivisions Securities', + 'description': 'Total Securities Issued By States and Political Subdivisions Held-To-Maturity At Amortized Cost and Available-For-Sale At Fair Value On A Consolidated Basis\nNote:\n(1) Prior To March 1994 Item Was Defined As Book Value\n(2) Includes The Aforementioned Securities Held In Trading Accounts For Tfr Filers\n(3) For Banks With Foreign Opeations, Data For March & September Of 1973 Through 1975 Are Reported On A Domestic Basis' + }, + 'SCMV': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Market Values', + 'description': 'Represents the market (fair) value of all investment securities' + }, + 'SCRES': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Less: Contra Accounts', + 'description': 'Contra-Assets To Securities (Reserves)\nNote: For Tfr Filers Only' + }, + 'SCUS': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'U.S. Treasury & Agency', + 'description': 'Total U.S. Treasury Securities and U.S. Government Agency and Corporation Obligations On A Consolidated Basis\nNote:\n1) From June 2009 Through December 2010 This Item Excluded Commercial Mortgage Backed Securities\n2) Prior To June 2009, This Item Included Commercial Mortgage Backed Securities\n3) Beginning March 1994 Consists Of Held-To-Maturity At Amortized Cost and Available-For-Sale At Fair Value Securities\n4) Does Not Include Mortgage Derivative Securities From March 1984 Through December 1986 For Tfr Filers\n5) Includes The Aforementioned Securities Held In Trading Accounts For Tfr Filers\n6) For Banks With Foreign Operations Data For March & September Of 1973 Through 1975 Are Reported On A Domestic Basis' + }, + 'SCUSA': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Securities Of Us Agencies', + 'description': 'Securities Of Us Agencies' + }, + 'SCUST': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'U.S. Treasury Securities', + 'description': 'U.S. Treasury Securities Held-To-Maturity At Amortized Cost and Available-For-Sale At Fair Value On A Consolidated Basis\nNote:\n(1) Beginning June 1996, Tfr Filers No Longer Report U.S. Treasury Securities Separately\n(2) Prior To March 1994 Item Was Defined As Book Value\n(3) Includes The Aforementioned Securities Held In Trading Accounts For Tfr Filers\n(4) For Banks With Foreign Operations, Data For March & September Of 1973 Through 1975 Are Reported On A Domestic Basis' + }, + 'STNAME': { + 'type': 'string', + 'title': 'Locations', + 'description': 'Locations', + 'x-elastic-type': 'keyword' + }, + 'STNUM': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'State Number', + 'description': 'State Number' + }, + 'SUBLLPF': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Subordinated Notes', + 'description': 'Subordinated Notes and Debentures and Limited-Life Preferred Stock and Related Surplus On A Consolidated Basis\nNote: (1) Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domesitc Basis' + }, + 'SUBND': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Subordinated Notes/Debentures', + 'description': 'Represents all notes and debentures subordinated to deposits and all capital notes and debentures' + }, + 'TINTINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Inc - Total Other', + 'description': 'Total Other Interest Income (Represents the sum of Other Interest Income - Investment Securities, Trading Account Assets, Federal Funds Sold and Securities Purchased, and Balanaces Due from Depository Institutions)' + }, + 'tochrt': { + 'type': 'integer', + 'title': 'Charter Transfers to Commercial Banks', + 'description': 'Represents the charter transfer of existing FDIC-insured savings institutions to an FDIC-insured commercial bank charter.' + }, + 'tofail': { + 'type': 'integer', + 'title': 'Assisted Mergers with Commercial Banks', + 'description': 'Represents the absorption of a failing savings institution by a commercial bank with assistance from either the BIF or SAIF.' + }, + 'TOINTEXP': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Int Exp - Total Deposits', + 'description': 'Total Other Interest Expense (Represents the sum of all components of Other Interest Expense)' + }, + 'tomerg': { + 'type': 'integer', + 'title': 'Unassisted Mergers with Commercial Banks', + 'description': 'Represents the absorption of a savings institution charter by a commercial bank without assistance.' + }, + 'tortc': { + 'type': 'integer', + 'title': 'Failures Transferred to the RTC', + 'description': 'Represents institutions that were declared failed and placed under RTC conservatorship until a buyer(s) is(are) found or a payout to depositors occurs.' + }, + 'TOTAL': { + 'type': 'integer', + 'title': 'Total Commercial Banks (Total Insured)', + 'description': 'Total Insured Commercial Banks including institutions that did not file a 12/31 fincncial report and other adjustments (See Notes to User)' + }, + 'TOT_FDIC': { + 'type': 'integer', + 'title': 'Total FDIC Supervised Savings Institutions', + 'description': 'Total FDIC Supervised Savings Institutions' + }, + 'TOT_OTS': { + 'type': 'integer', + 'title': 'Total Non FDIC Supervised Savings Institutions', + 'description': 'Total Non FDIC Supervised Savings Institutions' + }, + 'TOT_SAVE': { + 'type': 'integer', + 'x-special-note': 'State level institution count is currently unavailable.', + 'title': 'Total Savings Institutions', + 'description': 'All FDIC Insured Savings Institutions filing a 12/31 financial report' + }, + 'TPD': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Total Loans and Leases Past Due', + 'description': 'Total Loans and Leases Past Due' + }, + 'TRADE': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Trading Account Assets', + 'description': 'Assets Held In Trading Accounts On A Consolidated Basis\nNote:\n(1) Effective March 1994 Item Reported On A Gross Basis\n(2) Additional Detail Can Be Found On Schedule Rc-D\n(3) For Banks With Foreign Operations Data For March & September Of 1972 Through 1975 Are Reported On A Domestic Basis,\n(4) For Periods 1972 Through 1983 Includes Only Securities' + }, + 'TRADES': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Less: Trading Accounts', + 'description': 'Trading Accounts' + }, + 'TRN': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Memo: Domestic Deposits Transaction', + 'description': "Represents all demand deposits, NOW accounts, ATS accounts, accounts from which payments may be made to third parties by means of an automated teller machine, a remote service unit, or another electronic device, and accounts that permit third party payments through use of checks, drafts, negotiable instruments, or other similar instrument. (MMDA's are specifically excluded from the latter two definitions)" + }, + 'UNASSIST': { + 'type': 'integer', + 'title': 'Unassisted Mergers', + 'description': 'Voluntary mergers, consolidations or absorptions of two or more institutions.' + }, + 'UNINC': { + 'type': 'integer', + 'x-number-unit': 'Thousands of US Dollars', + 'title': 'Unearned Income', + 'description': 'Unearned Income On Loans On A Consolidated Basis\nNote: For Banks With Foreign Operations, Data For March 1976 Through September 1978 Are Domestic Only' + }, + 'UNIT': { + 'type': 'integer', + 'title': 'Unit Banks', + 'description': 'Unit banks are institutions that are operating only one office at which deposits are received or other banking business is conducted.' + }, + 'YEAR': { + 'type': 'string', + 'x-elastic-type': 'keyword', + 'title': 'Year', + 'description': 'Statistics reported as of end of year.' + } +} diff --git a/docs/docs/css/termynal.css b/docs/docs/css/termynal.css new file mode 100644 index 0000000..ed3a0ad --- /dev/null +++ b/docs/docs/css/termynal.css @@ -0,0 +1,101 @@ +/** + * termynal.js + * + * @author Ines Montani + * @version 0.0.1 + * @license MIT + */ + + :root { + --color-bg: #252a33; + --color-text: #eee; + --color-text-subtle: #a2a2a2; +} + +[data-termynal] { + width: 750px; + max-width: 100%; + background: var(--color-bg); + color: var(--color-text); + font-size: 18px; + font-family: 'Fira Mono', Consolas, Menlo, Monaco, 'Courier New', Courier, monospace; + border-radius: 4px; + padding: 75px 45px 35px; + position: relative; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +[data-termynal]:before { + content: ''; + position: absolute; + top: 15px; + left: 15px; + display: inline-block; + width: 15px; + height: 15px; + border-radius: 50%; + /* A little hack to display the window buttons in one pseudo element. */ + background: #d9515d; + -webkit-box-shadow: 25px 0 0 #f4c025, 50px 0 0 #3ec930; + box-shadow: 25px 0 0 #f4c025, 50px 0 0 #3ec930; +} + +[data-termynal]:after { + content: 'bash'; + position: absolute; + color: var(--color-text-subtle); + top: 5px; + left: 0; + width: 100%; + text-align: center; +} + +[data-ty] { + display: block; + line-height: 2; +} + +[data-ty]:before { + /* Set up defaults and ensure empty lines are displayed. */ + content: ''; + display: inline-block; + vertical-align: middle; +} + +[data-ty="input"]:before, +[data-ty-prompt]:before { + margin-right: 0.75em; + color: var(--color-text-subtle); +} + +[data-ty="input"]:before { + content: '$'; +} + +[data-ty][data-ty-prompt]:before { + content: attr(data-ty-prompt); +} + +[data-ty-cursor]:after { + content: attr(data-ty-cursor); + font-family: monospace; + margin-left: 0.5em; + -webkit-animation: blink 1s infinite; + animation: blink 1s infinite; +} + + +/* Cursor animation */ + +@-webkit-keyframes blink { + 50% { + opacity: 0; + } +} + +@keyframes blink { + 50% { + opacity: 0; + } +} \ No newline at end of file diff --git a/docs/docs/filtering.md b/docs/docs/filtering.md new file mode 100644 index 0000000..fbeaba2 --- /dev/null +++ b/docs/docs/filtering.md @@ -0,0 +1,156 @@ +The API uses the Elastic Search [query string syntax](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html#query-string-syntax) for filtering. + +## Overview + +First, get an idea of what fields you can use to filter from the `meta_dict`. + +```python +>>> import bankfind as bf +>>> fields = bf.meta_dict.keys() +dict_keys(['failures', 'history', 'institutions', 'locations', 'summary']) +``` + +Each of the keys above represent an endpoint. The values corresponding to each of the keys above are dictionaries. The dictionaries contain the fields available as well as the data type, description, and, sometimes, options to filter with. + +```python +>>> bf.meta_dict['failures'].keys() +dict_keys(['NAME', 'CERT', 'FIN', 'CITYST', 'FAILDATE', 'FAILYR', 'SAVR', 'RESTYPE1', 'CHCLASS1', 'RESTYPE', 'QBFDEP', 'QBFASSET', 'COST', 'PSTALP']) + +>>> bf.meta_dict['failures']['NAME'] +{'type': 'string', 'x-elastic-type': 'keyword', 'title': 'Institution Name', 'description': "This is the legal name of the institution. When available, the Institution's name links to useful information for the customers and vendors of these institutions. This information includes press releases, information about the acquiring institution, (if applicable), how your accounts and loans are affected, and how vendors can file claims against the receivership."} +``` + +## Filters + +The syntax for filtering will change based on the data-type. + +### strings + +**Syntax**: `:` + +First, let's filter based on cert, which as you can see from the `meta_dict` is a string field. + +```python +>>> bf.meta_dict['failures']['CERT']['type'] +'string' + +>>> data = bf.get_institutions(filters="CERT:57295") +>>> len(data['data']) +1 +``` + +Chain filters together with "AND": + +```python +>>> data = bf.get_institutions(filters="STNAME:Colorado AND CITY:Denver") +>>> len(data['data']) +108 +``` + +Filtering with "OR" is easy also: + +```python +>>> data = bf.get_institutions(filters='STNAME:("Colorado","Wyoming")') +>>> len(data['data']) +844 +``` + +### dates + +Dates must be entered in the following format: + +**Syntax**: `:yyyy-mm-dd` + +```python +>>> data = bf.get_institutions(filters='DATEUPDT:2019-12-31') +>>> len(data['data']) +3919 +``` + +They can also be used as ranges: + +#### exclusive + +Use curly braces `{}` and the range will exclude the beginning and end dates used in the range: + +**Syntax**: `:{yyyy-mm-dd TO yyyy-mm-dd}` + +```python +>>> data = bf.get_institutions(filters='DATEUPDT:{2015-01-01 TO 2018-12-31}') +>>> len(data['data']) +1921 +``` + +#### inclusive + +Use brackets `[]` and the range will the include the beginning and end dates used in the range + +**Syntax**: `:[yyyy-mm-dd TO yyyy-mm-dd]` + +```python +>>> data = bf.get_institutions(filters='DATEUPDT:[2010-01-01 TO 2018-12-31]') +>>> len(data['data']) +4556 +``` + +### numbers + +Numbers can also be used in ranges with the same syntax as dates + +#### exclusive + +Use curly braces `{}` and the range will exclude the beginning and end values in the range. Most of the values are represented in thousands. + +**Syntax**: `:{Number TO Number}` + +```python +>>> data = bf.get_institutions(filters='ASSET:{25000 TO 75000}') +>>> len(data['data']) +5530 +``` + +#### inclusive + +Use brackets `[]` and the range will the include the beginning and end dates used in the range + +**Syntax**: `:[Number TO Number]` + +*The filter below will retrieve institutions with assets greater than or equal to 2 billion or less than or equal to 5 billion.* + +```python +>>> data = bf.get_institutions(filters='ASSET:[2000000 TO 5000000]') +>>> len(data['data']) +685 +``` + +#### wildcard + +**Syntax**: `:[Number to *]` + +*The filter below will retrieve institutions with assets greater than or equal to 5 billion.* + +```python +>>> data = bf.get_institutions(filters='ASSET:[5000000 TO *]') +>>> len(data['data']) +602 +``` + +## Search + +Flexible text search is also available. Search supports text search and fuzzy matching, as opposed to filters that are exact matches. Currently, only two endpoints support the search functionality: `get_institutions` and `get_history`. + +The only field that currently supports the search functionality is `NAME`. It's a similar syntax to the [string filter](#strings). + +```python +>>> data = bf.get_institutions(search='NAME:AMG') +>>> len(data['data']) +5 +``` + +Take it a little further: + +```python +>>> data = bf.get_institutions(search='NAME:AMG National') +>>> len(data['data']) +1 +``` diff --git a/docs/docs/functions.md b/docs/docs/functions.md new file mode 100644 index 0000000..4a50a15 --- /dev/null +++ b/docs/docs/functions.md @@ -0,0 +1,588 @@ +## **get_failures** + +=== "Details" + + - *Description*: Detail on failed financial institutions + - *Return*: `dict` + - *Arguments* + + | Argument | Description | Type | Default | Required | Options | + |:-----------|:-----------------------------------------|:-----------------------------|:----------|:-----------|:--------------------------------------------------------------------------------------| + | filters | Filter(s) for the bank search | `str` | `None` | optional | | + | fields | Comma delimited list of fields to retrieve | `str` | All fields included by default | optional | | | + | sort_by | Field name by which to sort returned data | `str`| `FAILDATE` | optional | See meta_dict + | sort_order | Indicator if ascending or descending | `str` | `DESC` | optional | `ASC`
`DESC` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | offset | Offset of page to return | `int` | `0` | optional | + | output | Format of data to return | `str` | `json` | optional | `json`
`pandas` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | friendly_fields | Replace keys / column names with friendlier title | `bool` | `False` | optional | `True`
`False` + +=== "Example" + + ```python hl_lines="3" + import bankfind as bf + + data = bf.get_failures() + data['data'][0] + ``` + +=== "Data" + + ```python + { + 'data': { + 'QBFDEP': 139526, + 'PSTALP': 'WV', + 'FIN': '10536', + 'FAILDATE': '04/03/2020', + 'RESTYPE': 'FAILURE', + 'CITYST': 'BARBOURSVILLE, WV', + 'SAVR': 'DIF', + 'RESTYPE1': 'PA', + 'CHCLASS1': 'NM', + 'NAME': 'THE FIRST STATE BANK', + 'COST': None, + 'QBFASSET': 152400, + 'CERT': 14361, + 'FAILYR': '2020', + 'ID': '4102' + }, + 'score': 1 + } + ``` + +## **get_history** + + +=== "Details" + + - *Description*: Detail on structure change events + - *Return*: `dict` + - *Arguments* + + | Argument | Description | Type | Default | Required | Options | + |:-----------|:-----------------------------------------|:-----------------------------|:----------|:-----------|:--------------------------------------------------------------------------------------| + | filters | Filter(s) for the bank search | `str` | `None` | optional | | + | search | Flexible text search against institution records (fuzzy name matching) | `str` | `None` | optional | | + | fields | Comma delimited list of fields to retrieve | `str` | All fields included by default | optional | | | + | sort_by | Field name by which to sort returned data | `str`| `FAILDATE` | optional | See meta_dict + | sort_order | Indicator if ascending or descending | `str` | `DESC` | optional | `ASC`
`DESC` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | offset | Offset of page to return | `int` | `0` | optional | + | output | Format of data to return | `str` | `json` | optional | `json`
`pandas` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | friendly_fields | Replace keys / column names with friendlier title | `bool` | `False` | optional | `True`
`False` + + +=== "Example" + + ```python hl_lines="3" + import bankfind as bf + + data = bf.get_history() + data['data'][0] + ``` + +=== "Data" + + ```python + { + 'data': { + 'REPORT_TYPE': 711, + 'INSAGENT1': 'DIF', + 'INSAGENT2': '', + 'OFF_PCITY': 'Colorado Springs', + 'EFFDATE': '2020-07-27T00:00:00', + 'CHARTAGENT': 'STATE', + 'PSTALP': 'NE', + 'CLASS': 'NM', + 'FRM_OFF_SERVTYPE': 0, + 'OFF_LONGITUDE': -104.87635200138965, + 'OFF_PSTATE': 'COLORADO', + 'BANK_INSURED': 'Y', + 'CNTYNUM': 157, + 'INSTNAME': 'First State Bank', + 'OFF_PADDR': '3216 W Colorado AVE', + 'FRM_CLCODE': 0, + 'OFF_SERVTYPE_DESC': 'FULL SERVICE - BRICK AND MORTAR', + 'TRANSNUM': 202012234, + 'MZIPREST': '0000', + 'FDICREGION_DESC': 'KANSAS CITY', + 'FRM_OFF_CLCODE': 0, + 'PZIP5': '69361', + 'OFF_PZIPREST': '1906', + 'OFF_NAME': 'First State Bank Colorado Springs West Branch', + 'CERT': 15586, + 'OFF_PSTALP': 'CO', + 'PCITY': 'SCOTTSBLUFF', + 'LATITUDE': 0, + 'PROCDATE': '2020-08-05T00:00:00', + 'ACQDATE': '9999-12-31T00:00:00', + 'CHANGECODE': 711, + 'PADDR': '2002 BROADWAY', + 'MZIP5': '69361', + 'FI_UNINUM': 9873, + 'LONGITUDE': 0, + 'FRM_LATITUDE': 0, + 'STATE': 'NEBRASKA', + 'MSTALP': 'NE', + 'CNTYNAME': 'SCOTTS BLUFF', + 'ACQ_UNINUM': 0, + 'OFF_CNTYNUM': 41, + 'FI_EFFDATE': '2019-06-10T00:00:00', + 'FDICREGION': 11, + 'MSTATE': 'NEBRASKA', + 'FRM_LONGITUDE': 0, + 'OFF_CNTYNAME': 'EL PASO', + 'CHANGECODE_DESC': 'BRANCH OPENING', + 'MCITY': 'SCOTTSBLUFF', + 'MADDR': 'P.O. BOX 1267', + 'OFF_PZIP5': '80904', + 'OUT_UNINUM': 0, + 'PZIPREST': '0000', + 'ORG_STAT_FLG': 'Y', + 'FRM_OFF_LONGITUDE': 0, + 'ENDDATE': '9999-12-31T00:00:00', + 'UNINUM': 625952, + 'OFF_NUM': 6, + 'CLCODE': 21, + 'OFF_SERVTYPE': 11, + 'FRM_OFF_CNTYNUM': 0, + 'ORG_ROLE_CDE': 'BR', + 'REGAGENT': 'FDIC', + 'OFF_LATITUDE': 38.85583298227556, + 'ESTDATE': '2020-07-27T00:00:00', + 'FRM_OFF_LATITUDE': 0, + 'TRUST': 'Full', + 'ID': '20eb98a36c7c77cf6bc019ce391ba7c9' + }, + 'score': 1 + } + ``` + + +## **get_institutions** + +=== "Details" + + - *Description*: List of financial institutions + - *Return*: `dict` + - *Arguments* + + | Argument | Description | Type | Default | Required | Options | + |:-----------|:-----------------------------------------|:-----------------------------|:----------|:-----------|:--------------------------------------------------------------------------------------| + | filters | Filter(s) for the bank search | `str` | `None` | optional | | + | search | Flexible text search against institution records (fuzzy name matching) | `str` | `None` | optional | | + | fields | Comma delimited list of fields to retrieve | `str` | All fields included by default | optional | | | + | sort_by | Field name by which to sort returned data | `str`| `FAILDATE` | optional | See meta_dict + | sort_order | Indicator if ascending or descending | `str` | `DESC` | optional | `ASC`
`DESC` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | offset | Offset of page to return | `int` | `0` | optional | + | output | Format of data to return | `str` | `json` | optional | `json`
`pandas` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | friendly_fields | Replace keys / column names with friendlier title | `bool` | `False` | optional | `True`
`False` + + +=== "Example" + + ```python hl_lines="3" + import bankfind as bf + + data = bf.get_institutions() + data['data'][0] + ``` + +=== "Data" + + ```python + { + 'data': { + 'ZIP': '31087', + 'SASSER': 0, + 'CHRTAGNT': 'STATE', + 'CONSERVE': 'N', + 'REGAGENT2': '', + 'STNAME': 'Georgia', + 'ROAQ': 0.65, + 'INSDATE': '01/01/1934', + 'TE06N528': '', + 'TE06N529': '', + 'OFFOA': 0, + 'FDICDBS': '05', + 'NAMEHCR': '', + 'OCCDIST': '5', + 'CMSA': '', + 'DEPDOM': 59267, + 'CBSA_METRO_FLG': '0', + 'TE10N528': '', + 'NETINC': 124, + 'CBSA_DIV_NO': '', + 'MUTUAL': '0', + 'MSA_NO': '0', + 'OFFFOR': 0, + 'INSSAVE': 0, + 'CHARTER': '0', + 'RSSDHCR': '', + 'TE04N528': '', + 'TE04N529': '', + 'CERT': '10057', + 'STALP': 'GA', + 'SPECGRP': 7, + 'CFPBENDDTE': '31-Dec-9999', + 'TE09N528': '', + 'IBA': 0, + 'INSBIF': 0, + 'INSFDIC': 1, + 'ENDEFYMD': '12/31/9999', + 'MSA': '', + 'TE02N528': '', + 'CB': '1', + 'TE02N529': '', + 'TE07N528': '', + 'FDICSUPV': 'Atlanta', + 'FED': '6', + 'REGAGNT': 'FDIC', + 'NEWCERT': 0, + 'ASSET': 76416, + 'CBSA_MICRO_FLG': '1', + 'OFFICES': 1, + 'STCNTY': '13141', + 'CSA_FLG': '0', + 'CITY': 'Sparta', + 'CLCODE': '21', + 'INACTIVE': 0, + 'CMSA_NO': '0', + 'STALPHCR': '', + 'INSAGNT1': 'DIF', + 'BKCLASS': 'NM', + 'EFFDATE': '08/31/2009', + 'SUPRV_FD': '05', + 'DATEUPDT': '09/02/2009', + 'INSAGNT2': '', + 'TE05N528': '', + 'TE05N529': '', + 'ROEQ': 2.96, + 'FDICREGN': 'Atlanta', + 'FLDOFF': 'Savannah', + 'WEBADDR': 'http://www.bankofhancock.com', + 'QBPRCOML': '2', + 'COUNTY': 'Hancock', + 'DOCKET': '0', + 'ULTCERT': '10057', + 'OTSDIST': '2', + 'LAW_SASSER_FLG': 'N', + 'PARCERT': '0', + 'ROA': 0.65, + 'CFPBFLAG': 0, + 'RISDATE': '12/31/2019', + 'ROE': 2.96, + 'INSCOML': 1, + 'OTSREGNM': 'Southeast', + 'EQ': '17026', + 'RUNDATE': '08/08/2020', + 'TE03N528': '', + 'TE03N529': '', + 'NAME': 'Bank of Hancock County', + 'HCTMULT': '', + 'CBSA_DIV': '', + 'ADDRESS': '12855 Broad Street', + 'OFFDOM': 1, + 'SUBCHAPS': '0', + 'PROCDATE': '09/02/2009', + 'INSSAIF': 0, + 'DENOVO': '0', + 'CBSA_NO': '33300', + 'ACTIVE': 1, + 'CFPBEFFDTE': '31-Dec-9999', + 'STCHRTR': 1, + 'REPDTE': '03/31/2020', + 'FORM31': '0', + 'CSA': '', + 'INSDIF': 1, + 'TE01N529': '', + 'ROAPTX': 0.65, + 'STNUM': '13', + 'OAKAR': 0, + 'SPECGRPN': 'Other Specialized Under 1 Billion', + 'ROAPTXQ': 0.65, + 'FED_RSSD': '37', + 'CSA_NO': '', + 'CBSA_METRO': 0, + 'INSTCRCD': 0, + 'DEP': 59267, + 'UNINUM': '6429', + 'INSTAG': '0', + 'TE01N528': '', + 'CITYHCR': '', + 'TRACT': '0', + 'CBSA': 'Milledgeville, GA', + 'CBSA_DIV_FLG': '0', + 'TE08N528': '', + 'NETINCQ': 124, + 'CHANGEC1': 520, + 'CERTCONS': '0', + 'ESTYMD': '09/01/1904', + 'FEDCHRTR': 0, + 'TRUST': '0', + 'ID': '10057' + }, + 'score': 1 + } + ``` + +## **get_locations** + +=== "Details" + + - *Description*: Detail on failed financial institutions + - *Return*: `dict` + - *Arguments* + + | Argument | Description | Type | Default | Required | Options | + |:-----------|:-----------------------------------------|:-----------------------------|:----------|:-----------|:--------------------------------------------------------------------------------------| + | filters | Filter(s) for the bank search | `str` | `None` | optional | | + | fields | Comma delimited list of fields to retrieve | `str` | All fields included by default | optional | | | + | sort_by | Field name by which to sort returned data | `str`| `FAILDATE` | optional | See meta_dict + | sort_order | Indicator if ascending or descending | `str` | `DESC` | optional | `ASC`
`DESC` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | offset | Offset of page to return | `int` | `0` | optional | + | output | Format of data to return | `str` | `json` | optional | `json`
`pandas` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | friendly_fields | Replace keys / column names with friendlier title | `bool` | `False` | optional | `True`
`False` + + +=== "Example" + + ```python hl_lines="3" + import bankfind as bf + + data = bf.get_locations() + data['data'][0] + ``` + +=== "Data" + + ```python + { + 'data': { + 'ZIP': '21613', + 'CBSA_NO': '15700', + 'BKCLASS': 'SM', + 'FI_UNINUM': 3221, + 'STNAME': 'Maryland', + 'CSA': 'Salisbury-Cambridge, MD-DE', + 'COUNTY': 'Dorchester', + 'MAINOFF': 0, + 'OFFNAME': 'WOODS ROAD BRANCH', + 'CBSA_METRO_FLG': '0', + 'CBSA_MICRO_FLG': '1', + 'CSA_NO': '480', + 'CBSA_METRO': 0, + 'CBSA_DIV_NO': '', + 'RUNDATE': '08/07/2020', + 'NAME': '1880 Bank', + 'UNINUM': 204568, + 'SERVTYPE': 11, + 'CSA_FLG': '1', + 'STCNTY': '24019', + 'CBSA': 'Cambridge, MD', + 'CBSA_DIV': '', + 'CBSA_DIV_FLG': '0', + 'CITY': 'Cambridge', + 'ADDRESS': '803 Woods Road', + 'CERT': '4829', + 'STALP': 'MD', + 'OFFNUM': 1, + 'ESTYMD': '12/23/1968', + 'ID': '204568' + }, + 'score': 1 + } + ``` + +## **get_summary** + +=== "Details" + + - *Description*: Detail on failed financial institutions + - *Return*: `dict` + - *Arguments* + + | Argument | Description | Type | Default | Required | Options | + |:-----------|:-----------------------------------------|:-----------------------------|:----------|:-----------|:--------------------------------------------------------------------------------------| + | filters | Filter(s) for the bank search | `str` | `None` | optional | | + | fields | Comma delimited list of fields to retrieve | `str` | All fields included by default | optional | | | + | sort_by | Field name by which to sort returned data | `str`| `FAILDATE` | optional | See meta_dict + | sort_order | Indicator if ascending or descending | `str` | `DESC` | optional | `ASC`
`DESC` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | offset | Offset of page to return | `int` | `0` | optional | + | output | Format of data to return | `str` | `json` | optional | `json`
`pandas` + | limit | Number of records to return | `int` | `10000` | optional | 0 to 10,000 + | friendly_fields | Replace keys / column names with friendlier title | `bool` | `False` | optional | `True`
`False` + +=== "Example" + + ```python hl_lines="3" + import bankfind as bf + + data = bf.get_failures() + data['data'][0] + ``` + +=== "Data" + + ```python + { + 'data': { + 'INTINC2': 51722726, + 'EXTRA': 1316, + 'LNATRES': 9769341, + 'chrtrest': 0, + 'STNAME': 'United States and Other Areas', + 'ILNS': 39718788, + 'LNAG': 3306388, + 'EINTEXP2': 10348941, + 'EPREMAGG': 2063405, + 'YEAR': '2019', + 'BKPREM': 8315925, + 'INTAN': 12025281, + 'LNRE': 444072342, + 'chartoth': 1, + 'IGLSEC': 482482, + 'OT_BIF': 0, + 'EAMINTAN': 456598, + 'newcount': 0, + 'DEPI': 840535976, + 'EFHLBADV': None, + 'tofail': 1, + 'SCMTGBK': 292023664, + 'NTRTMLG': 118177154, + 'OEA': 1483578, + 'EFREPP': 90846, + 'LNLSGR': 655127513, + 'NETINC': 15194171, + 'TOT_OTS': 334, + 'CONS': 0, + 'OTHNBORR': 91479748, + 'LNREMULT': 68529412, + 'P9LNLS': 7463014, + 'COUNT': 659, + 'LNRERES': 253541537, + 'EQCS': 790384, + 'SCAGE': 304050945, + 'LNRECONS': 23453492, + 'TOT_FDIC': 325, + 'EINTEXP': 10348941, + 'TPD': 13656751, + 'LNCI': 43378018, + 'EQNM': 125002942, + 'INTBLIB': 1007906756, + 'liqasstd': 0, + 'SC': 385021771, + 'INTBAST': 1096557030, + 'EDEPDOM': 8287049, + 'ILNDOM': 39718603, + 'NCLNLS': 11414221, + 'UNINC': 133264, + 'ISC': 10339424, + 'LIABEQ': 1153906385, + 'tochrt': 7, + 'IFEE': 865589, + 'TOT_SAVE': 659, + 'LNRESRE': None, + 'alsonew': 0, + 'NUMEMP': 121746, + 'ASSET': 1153906405, + 'TINTINC': 11723463, + 'NALNLS': 3951207, + 'EOTHNINT': 14513593, + 'TRADES': 0, + 'ESAL': 12889946, + 'ILNLS': 39999263, + 'LIAB': 1028873691, + 'LNDEP': 417597, + 'OTHBFHLB': 75972627, + 'ITAX': 4361954, + 'EQCDIVP': 12402, + 'SCRES': None, + 'TRADE': 356945, + 'MISSADJ': -1, + 'FD_BIF': 0, + 'CRLNLS': 1422110, + 'LS': 5575099, + 'tomerg': 11, + 'ELNATR': 5247975, + 'LNCRCD': 99551689, + 'INTINC': 51722726, + 'EQUPTOT': 70024149, + 'CHBALI': 64693509, + 'EQPP': 282890, + 'PTXNOINC': 19078526, + 'OINTINC': 11723463, + 'tortc': 0, + 'ILS': 280475, + 'FD_SAIF': 0, + 'EQNWCERT': None, + 'OINTBOR': 85304294, + 'SCUST': 12170713, + 'combos': 12, + 'P3LNLS': 6193737, + 'OTLNCNTA': None, + 'OTHLIAB': 16342193, + 'IFREPO': 18439, + 'LNLSNET': 645358172, + 'LNCONOT1': None, + 'EQCDIVC': 13089203, + 'SCUSA': 316221658, + 'DRLNLS': 7211296, + 'OTHBORR': 1685904, + 'EQCDIV': 13101605, + 'EDEP': 8287065, + 'BRWDMONY': 1685904, + 'comboass': 0, + 'FREPO': 1126633, + 'CHBAL': 73009001, + 'ALLOTHER': 14950385, + 'FREPP': 6067807, + 'IRAKEOGH': 123424709, + 'OT_SAIF': 0, + 'ORE': 302690, + 'SCMUNI': 10308292, + 'ESUBND': 278, + 'SCUS': 316221658, + 'ITRADE': 0, + 'OINTEXP': 1777028, + 'liqunass': 1, + 'DDT': 58550380, + 'EDEPFOR': 16, + 'LNALLOTH': 42378773, + 'SCEQ': 258574, + 'ITAXR': 19078526, + 'ILNFOR': 185, + 'ICHBAL': 1365600, + 'LNRELOC': 21179492, + 'STNUM': '0', + 'SUBLLPF': 26052, + 'OONONII': 11554071, + 'CORPBNDS': 55721897, + 'NONIX': 29466944, + 'NCHGREC': 5789186, + 'OTHASST': 28389467, + 'DEP': 921025698, + 'NIM': 41373785, + 'LNCON': 141930462, + 'EQSUR': 53905519, + 'SAVINGS': 659, + 'ORET': 302690, + 'CB_SI': 'SI', + 'TOINTEXP': 2061876, + 'LNMUNI': 1630491, + 'LNRENRES': 98547901, + 'NONII': 12419660, + 'BRO': 104643398, + 'ID': 'SI_2019_0' + }, + 'score': 1 + } + ``` diff --git a/docs/docs/img/favicon.png b/docs/docs/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..cae8492287d3d6a2e0c1efd9eb636c72fce1ee65 GIT binary patch literal 10658 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
gGUWpa`Z712PkJnZK62mw9Zb{l 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 literal 0 HcmV?d00001 diff --git a/docs/docs/img/logo.png b/docs/docs/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..653970a32b14faf573daacd24a3a3d16188bb29b GIT binary patch literal 14226 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 KqE%kK{yzXuJylu& literal 0 HcmV?d00001 diff --git a/docs/docs/img/small_logo.png b/docs/docs/img/small_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3e43ff0b42b7f1ef89746a72a70aac2cce84e78c GIT binary patch literal 10778 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 Nl}8#1r4OIJ_#bf)4SN6p literal 0 HcmV?d00001 diff --git a/docs/docs/index.md b/docs/docs/index.md new file mode 100644 index 0000000..cc78b16 --- /dev/null +++ b/docs/docs/index.md @@ -0,0 +1,75 @@ +

+ +

+

+ Python interface to the FDIC's API for publically available bank data +

+

+ + Build Status + + + Coverage + + + Package version + +

+ +--- + +**Documentation**: https://bankfind.dpguthrie.com + + + +**Source Code**: https://github.com/dpguthrie/bankfind + +**FDIC Documentation**: https://banks.data.fdic.gov/docs/ + +--- + +## Overview + +**bankfind** is a python interface to publically available bank data from the FDIC. + +There are currently, as of 8/11/20, five endpoints that the FDIC has exposed to the public: + +- **failures** - returns detail on failed financial institutions +- **institutions** - returns a list of financial institutions +- **history** - returns detail on structure change events +- **locations** - returns locations / branches of financial institutions +- **summary** - returns aggregate financial and structure data, subtotaled by year, regarding financial institutions + +## Requirements + +Python 2.7, 3.5+ + +- [Requests](https://requests.readthedocs.io/en/master/) - The elegant and simple HTTP library for Python, built for human beings. + +## Installation + +
+ pip install bankfind + + Successfully installed bankfind + restart ↻ +
+ +## Example + +```python +import bankfind as bf + +# Get Institutions +data = bf.get_institutions() + +# Get Institutions from Colorado with high ROE +data = bf.get_institutions(filters="STNAME:Colorado AND ROE:[25 TO *]") + +# Get Commercial Banks from Colorado that aren't S-Corps +data = bf.get_institutions(filters="STNAME:Colorado AND SUBCHAPS:0 AND CB:1") +``` + +## License + +This project is licensed under the terms of the MIT license. diff --git a/docs/docs/js/custom.js b/docs/docs/js/custom.js new file mode 100644 index 0000000..4cd0840 --- /dev/null +++ b/docs/docs/js/custom.js @@ -0,0 +1,149 @@ +const div = document.querySelector('.github-topic-projects') + +async function getDataBatch(page) { + const response = await fetch(`https://api.github.com/search/repositories?q=topic:bankfind&per_page=100&page=${page}`, { headers: { Accept: 'application/vnd.github.mercy-preview+json' } }) + const data = await response.json() + return data +} + +async function getData() { + let page = 1 + let data = [] + let dataBatch = await getDataBatch(page) + data = data.concat(dataBatch.items) + const totalCount = dataBatch.total_count + while (data.length < totalCount) { + page += 1 + dataBatch = await getDataBatch(page) + data = data.concat(dataBatch.items) + } + return data +} + +function setupTermynal() { + document.querySelectorAll(".termynal").forEach(node => { + node.style.display = "block"; + new Termynal(node, { + lineDelay: 500 + }); + }); + const progressLiteralStart = "---> 100%"; + const promptLiteralStart = "$ "; + const customPromptLiteralStart = "# "; + const termynalActivateClass = "termy"; + let termynals = []; + + function createTermynals() { + document + .querySelectorAll(`.${termynalActivateClass} .highlight`) + .forEach(node => { + const text = node.textContent; + const lines = text.split("\n"); + const useLines = []; + let buffer = []; + function saveBuffer() { + if (buffer.length) { + let isBlankSpace = true; + buffer.forEach(line => { + if (line) { + isBlankSpace = false; + } + }); + dataValue = {}; + if (isBlankSpace) { + dataValue["delay"] = 0; + } + if (buffer[buffer.length - 1] === "") { + // A last single
won't have effect + // so put an additional one + buffer.push(""); + } + const bufferValue = buffer.join("
"); + dataValue["value"] = bufferValue; + useLines.push(dataValue); + buffer = []; + } + } + for (let line of lines) { + if (line === progressLiteralStart) { + saveBuffer(); + useLines.push({ + type: "progress" + }); + } else if (line.startsWith(promptLiteralStart)) { + saveBuffer(); + const value = line.replace(promptLiteralStart, "").trimEnd(); + useLines.push({ + type: "input", + value: value + }); + } else if (line.startsWith("// ")) { + saveBuffer(); + const value = "πŸ’¬ " + line.replace("// ", "").trimEnd(); + useLines.push({ + value: value, + class: "termynal-comment", + delay: 0 + }); + } else if (line.startsWith(customPromptLiteralStart)) { + saveBuffer(); + const promptStart = line.indexOf(promptLiteralStart); + if (promptStart === -1) { + console.error("Custom prompt found but no end delimiter", line) + } + const prompt = line.slice(0, promptStart).replace(customPromptLiteralStart, "") + let value = line.slice(promptStart + promptLiteralStart.length); + useLines.push({ + type: "input", + value: value, + prompt: prompt + }); + } else { + buffer.push(line); + } + } + saveBuffer(); + const div = document.createElement("div"); + node.replaceWith(div); + const termynal = new Termynal(div, { + lineData: useLines, + noInit: true, + lineDelay: 500 + }); + termynals.push(termynal); + }); + } + + function loadVisibleTermynals() { + termynals = termynals.filter(termynal => { + if (termynal.container.getBoundingClientRect().top - innerHeight <= 0) { + termynal.init(); + return false; + } + return true; + }); + } + window.addEventListener("scroll", loadVisibleTermynals); + createTermynals(); + loadVisibleTermynals(); +} + +async function main() { + if (div) { + data = await getData() + div.innerHTML = '
    ' + const ul = document.querySelector('.github-topic-projects ul') + data.forEach(v => { + if (v.full_name === 'dpguthrie/bankfind') { + return + } + const li = document.createElement('li') + li.innerHTML = `β˜… ${v.stargazers_count} - ${v.full_name} by @${v.owner.login}` + ul.append(li) + }) + } + + setupTermynal(); +} + +main() diff --git a/docs/docs/js/termynal.js b/docs/docs/js/termynal.js new file mode 100644 index 0000000..ce114cc --- /dev/null +++ b/docs/docs/js/termynal.js @@ -0,0 +1,263 @@ +/** + * termynal.js + * A lightweight, modern and extensible animated terminal window, using + * async/await. + * + * @author Ines Montani + * @version 0.0.1 + * @license MIT + */ + +'use strict'; + +/** Generate a terminal widget. */ +class Termynal { + /** + * Construct the widget's settings. + * @param {(string|Node)=} container - Query selector or container element. + * @param {Object=} options - Custom settings. + * @param {string} options.prefix - Prefix to use for data attributes. + * @param {number} options.startDelay - Delay before animation, in ms. + * @param {number} options.typeDelay - Delay between each typed character, in ms. + * @param {number} options.lineDelay - Delay between each line, in ms. + * @param {number} options.progressLength - Number of characters displayed as progress bar. + * @param {string} options.progressChar – Character to use for progress bar, defaults to β–ˆ. + * @param {number} options.progressPercent - Max percent of progress. + * @param {string} options.cursor – Character to use for cursor, defaults to β–‹. + * @param {Object[]} lineData - Dynamically loaded line data objects. + * @param {boolean} options.noInit - Don't initialise the animation. + */ + constructor(container = '#termynal', options = {}) { + this.container = (typeof container === 'string') ? document.querySelector(container) : container; + this.pfx = `data-${options.prefix || 'ty'}`; + this.originalStartDelay = this.startDelay = options.startDelay + || parseFloat(this.container.getAttribute(`${this.pfx}-startDelay`)) || 600; + this.originalTypeDelay = this.typeDelay = options.typeDelay + || parseFloat(this.container.getAttribute(`${this.pfx}-typeDelay`)) || 90; + this.originalLineDelay = this.lineDelay = options.lineDelay + || parseFloat(this.container.getAttribute(`${this.pfx}-lineDelay`)) || 1500; + this.progressLength = options.progressLength + || parseFloat(this.container.getAttribute(`${this.pfx}-progressLength`)) || 40; + this.progressChar = options.progressChar + || this.container.getAttribute(`${this.pfx}-progressChar`) || 'β–ˆ'; + this.progressPercent = options.progressPercent + || parseFloat(this.container.getAttribute(`${this.pfx}-progressPercent`)) || 100; + this.cursor = options.cursor + || this.container.getAttribute(`${this.pfx}-cursor`) || 'β–‹'; + this.lineData = this.lineDataToElements(options.lineData || []); + this.loadLines() + if (!options.noInit) this.init() + } + + loadLines() { + // Load all the lines and create the container so that the size is fixed + // Otherwise it would be changing and the user viewport would be constantly + // moving as she/he scrolls + const finish = this.generateFinish() + finish.style.visibility = 'hidden' + this.container.appendChild(finish) + // Appends dynamically loaded lines to existing line elements. + this.lines = [...this.container.querySelectorAll(`[${this.pfx}]`)].concat(this.lineData); + for (let line of this.lines) { + line.style.visibility = 'hidden' + this.container.appendChild(line) + } + const restart = this.generateRestart() + restart.style.visibility = 'hidden' + this.container.appendChild(restart) + this.container.setAttribute('data-termynal', ''); + } + + /** + * Initialise the widget, get lines, clear container and start animation. + */ + init() { + /** + * Calculates width and height of Termynal container. + * If container is empty and lines are dynamically loaded, defaults to browser `auto` or CSS. + */ + const containerStyle = getComputedStyle(this.container); + this.container.style.width = containerStyle.width !== '0px' ? + containerStyle.width : undefined; + this.container.style.minHeight = containerStyle.height !== '0px' ? + containerStyle.height : undefined; + + this.container.setAttribute('data-termynal', ''); + this.container.innerHTML = ''; + for (let line of this.lines) { + line.style.visibility = 'visible' + } + this.start(); + } + + /** + * Start the animation and rener the lines depending on their data attributes. + */ + async start() { + this.addFinish() + await this._wait(this.startDelay); + + for (let line of this.lines) { + const type = line.getAttribute(this.pfx); + const delay = line.getAttribute(`${this.pfx}-delay`) || this.lineDelay; + + if (type == 'input') { + line.setAttribute(`${this.pfx}-cursor`, this.cursor); + await this.type(line); + await this._wait(delay); + } + + else if (type == 'progress') { + await this.progress(line); + await this._wait(delay); + } + + else { + this.container.appendChild(line); + await this._wait(delay); + } + + line.removeAttribute(`${this.pfx}-cursor`); + } + this.addRestart() + this.finishElement.style.visibility = 'hidden' + this.lineDelay = this.originalLineDelay + this.typeDelay = this.originalTypeDelay + this.startDelay = this.originalStartDelay + } + + generateRestart() { + const restart = document.createElement('a') + restart.onclick = (e) => { + e.preventDefault() + this.container.innerHTML = '' + this.init() + } + restart.href = '#' + restart.setAttribute('data-terminal-control', '') + restart.innerHTML = "restart ↻" + return restart + } + + generateFinish() { + const finish = document.createElement('a') + finish.onclick = (e) => { + e.preventDefault() + this.lineDelay = 0 + this.typeDelay = 0 + this.startDelay = 0 + } + finish.href = '#' + finish.setAttribute('data-terminal-control', '') + this.finishElement = finish + return finish + } + + addRestart() { + const restart = this.generateRestart() + this.container.appendChild(restart) + } + + addFinish() { + const finish = this.generateFinish() + this.container.appendChild(finish) + } + + /** + * Animate a typed line. + * @param {Node} line - The line element to render. + */ + async type(line) { + const chars = [...line.textContent]; + line.textContent = ''; + this.container.appendChild(line); + + for (let char of chars) { + const delay = line.getAttribute(`${this.pfx}-typeDelay`) || this.typeDelay; + await this._wait(delay); + line.textContent += char; + } + } + + /** + * Animate a progress bar. + * @param {Node} line - The line element to render. + */ + async progress(line) { + const progressLength = line.getAttribute(`${this.pfx}-progressLength`) + || this.progressLength; + const progressChar = line.getAttribute(`${this.pfx}-progressChar`) + || this.progressChar; + const chars = progressChar.repeat(progressLength); + const progressPercent = line.getAttribute(`${this.pfx}-progressPercent`) + || this.progressPercent; + line.textContent = ''; + this.container.appendChild(line); + + for (let i = 1; i < chars.length + 1; i++) { + await this._wait(this.typeDelay); + const percent = Math.round(i / chars.length * 100); + line.textContent = `${chars.slice(0, i)} ${percent}%`; + if (percent>progressPercent) { + break; + } + } + } + + /** + * Helper function for animation delays, called with `await`. + * @param {number} time - Timeout, in ms. + */ + _wait(time) { + return new Promise(resolve => setTimeout(resolve, time)); + } + + /** + * Converts line data objects into line elements. + * + * @param {Object[]} lineData - Dynamically loaded lines. + * @param {Object} line - Line data object. + * @returns {Element[]} - Array of line elements. + */ + lineDataToElements(lineData) { + return lineData.map(line => { + let div = document.createElement('div'); + div.innerHTML = `${line.value || ''}`; + + return div.firstElementChild; + }); + } + + /** + * Helper function for generating attributes string. + * + * @param {Object} line - Line data object. + * @returns {string} - String of attributes. + */ + _attributes(line) { + let attrs = ''; + for (let prop in line) { + // Custom add class + if (prop === 'class') { + attrs += ` class=${line[prop]} ` + continue + } + if (prop === 'type') { + attrs += `${this.pfx}="${line[prop]}" ` + } else if (prop !== 'value') { + attrs += `${this.pfx}-${prop}="${line[prop]}" ` + } + } + + return attrs; + } +} + +/** +* HTML API: If current script has container(s) specified, initialise Termynal. +*/ +if (document.currentScript.hasAttribute('data-termynal-container')) { + const containers = document.currentScript.getAttribute('data-termynal-container'); + containers.split('|') + .forEach(container => new Termynal(container)) +} diff --git a/docs/docs/release_notes.md b/docs/docs/release_notes.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml new file mode 100644 index 0000000..fd3ef9c --- /dev/null +++ b/docs/mkdocs.yml @@ -0,0 +1,63 @@ +# Project Information +site_name: bankfind +site_description: Python wrapper allowing developers access to the FDIC’s publically available bank data +site_author: Doug Guthrie + +# Repository +repo_name: bankfind +repo_url: https://github.com/dpguthrie/bankfind + +# Configuration +theme: + name: material + palette: + primary: black + icon: + repo: fontawesome/brands/github-alt + logo: img/small_logo.png + favicon: img/favicon.png + language: en + +# Extras +extra: + social: + - icon: fontawesome/brands/github-alt + link: https://github.com/dpguthrie + - icon: fontawesome/brands/linkedin + link: https://www.linkedin.com/in/douglas-guthrie-07994a48/ + - icon: fontawesome/brands/medium + link: https://medium.com/@douglas.p.guthrie + - icon: fontawesome/solid/globe + link: https://dpguthrie.com + +extra_css: + - css/termynal.css + +extra_javascript: + - js/termynal.js + - js/custom.js + +# Extensions +markdown_extensions: + - admonition + - codehilite: + guess_lang: false + - toc: + permalink: true + - pymdownx.superfences + - pymdownx.tabbed + - pymdownx.details + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg + +# Google Analytics +google_analytics: + - UA-175202147-1 + - auto + +nav: + - index.md + - functions.md + - filtering.md + - release_notes.md \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..a9f0c65 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,43 @@ +[build-system] +requires = ["flit_core >=2,<4"] +build-backend = "flit_core.buildapi" + +[tool.flit.metadata] +module = "bankfind" +author = "Doug Guthrie" +author-email = "douglas.p.guthrie@gmail.com" +home-page = "https://github.com/dpguthrie/bankfind" +keywords = "banking, finance, fdic, api, requests" +requires-python="2.7,>=3.5" +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Intended Audience :: Financial and Insurance Industry", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Programming Language :: Python", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", +] +requires = [ + "requests == 2.24.0", + "pandas>=0.24" +] +description-file = "README.md" + +[tool.flit.metadata.requires-extra] +test = [ + 'pytest', + 'coverage', + 'pytest-cov' +] +doc = [ + 'mkdocs-material', + 'pymdown-extensions' +] + +[tool.flit.metadata.urls] +Documentation = "https://bankfind.dpguthrie.com" diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 0000000..eab0add --- /dev/null +++ b/pytest.ini @@ -0,0 +1,10 @@ +[pytest] +testpaths = + tests + bankfind +norecursedirs=dist build .venv .vscode demo +addopts = + --doctest-modules + --cov=bankfind + -r a + -v \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..fd606a6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +pandas>=0.24 +requests=2.24.0 diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_functions.py b/tests/test_functions.py new file mode 100644 index 0000000..c06cafa --- /dev/null +++ b/tests/test_functions.py @@ -0,0 +1,46 @@ +import bankfind as bf + + +def test_institutions(): + data = bf.get_institutions( + filters="STALP:CO AND ACTIVE:1", + search="NAME: AMG", + ) + assert len(data['data']) == 1 + + +def test_locations(): + data = bf.get_locations( + filters="CERT:57295" + ) + assert len(data['data']) >= 7 + + +def test_history(): + data = bf.get_history( + filters="CERT:57295", + output='pandas', + friendly_fields=True + ) + assert len(data) >= 18 + + +def test_summary(): + df = bf.get_summary( + filters='CB_SI:CB AND ASSET:[10000000000 TO *] AND YEAR:["2018" TO "2019"]', + output='pandas') + assert len(df) >= 4 + + +def test_failures(): + data = bf.get_failures( + filters='PSTALP:CO AND FAILYR:["2008" TO "2011"]', + sort_by='COST', + sort_order='DESC', + friendly_fields=True) + assert len(data['data']) == 9 + + +def test_bad_request(): + response = bf.get_institutions(sort_by="BAD_SORT_BY_FIELD") + assert response.status_code == 400