Saravanan666/pypi-org huggingface dataset:
Package: adb-unicode-keyboard
Send any Unicode character to your Android devicepipinstalladb-unicode-keyboardfromadb_unicode_keyboardimportAdbUnicodeKeyboardfromtimeimportsleepadbkeyboard=AdbUnicodeKeyboard(adb_path="C:\\Users\\Gamer\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe",deviceserial="localhost:5735",exit_keys="ctrl+x")adbkeyboard.connect_to_adb()oldkeyboard=adbkeyboard.get_all_installed_keyboards()[0]adbkeyboard.install_adb_keyboard()# installs "https://github.com/senzhk/ADBKeyBoard/raw/master/ADBKeyboard.apk"adbkeyboard.activate_adb_keyboard()ifadbkeyboard.is_keyboard_shown():adbkeyboard.send_unicode_text('öü')adbkeyboard.send_unicode_text_with_delay('öü',delay_range=(0.05,0.3))sleep(1)adbkeyboard.longpress_66_keycode_enter()# not executed with ADBKeyBoard / all keycodes are available as methodssleep(1)adbkeyboard.press_66_keycode_enter()# not executed with ADBKeyBoard  / all keycodes are available as methodsadbkeyboard.disable_adb_keyboard(new_keyboard_name=None)# If no keyboard name is passed, will be reset to defaultadbkeyboard.disable_adb_keyboard(new_keyboard_name=oldkeyboard)#adbkeyboard.uninstall_adb_keyboard()# Chaining is possibleadbkeyboard.connect_to_adb().activate_adb_keyboard().send_unicode_text('böb&oö').disable_adb_keyboard()
Package: adb-utils
adb-utils对adb常用接口的二次开发Requirementspython>=3.8项目里用到了base_image因此需要额外安装opencv-pythonInstallationpip3 install adb-utilsTODOminicap集成minitouch集成设备性能数据可视化基于PYQT的设备管理工具函数不打算写,看源码备注就行了
Package: adbx
adbxA dummy Python package that containsADBbinaries which will be registered in PATH, so you don't have to do yourself.python -m pip install adbx$ adb --version
Android Debug Bridge version 1.0.41
Version 33.0.0-8141338Package version equals to ADB version, it is dynamically set before building the wheel.$ python
>>> import adbx
>>> adbx.__version__
33.0.0And as this is an actual package like other Python packages, you can update and uninstall it withpip.python -m pip uninstall adbxpython -m pip install adbx --upgradeIf you want to build wheel yourself:python -m pip install -r requirements.txt
python ./pack.py win32 windowsFirst argument: Platform tag which will be used inpip wheel, (win32builds wheel named inadbx-33.0.0-py3-none-win32.whl)Second argument: Which platform ADB binaries needs to download for. (windowsdownloadsplatform-tools-latest-windows.zip)Code is licensed with CC0 1.0. However, this doesn't apply for ADB binaries which licensed with Apache License 2.0.
Package: adc
# Astronomy Data Commons Genesis Client LibrariesLibraries making it easy to access astronomy data commons resources.## Developer notes### Tag, build, and upload to PyPI and Conda` git tag-s-av0.x.x `` python setup.py sdist bdist_wheel twine upload dist/* `` conda build-cdefaults-cconda-forgerecipe anaconda upload--userscimma/Users/mjuric/anaconda3/conda-bld/noarch/adc-0.0.2-py_0.tar.bz2`
Package: adc64format
This is a script and library to help interfact with the ADC64 format.To install:pip install adc64formatTo dump the contents of a single ADC64 file to an HDF5 format:adc64_to_hdf5.py <input ADC64 file>.data <output HDF5 file>.h5To use interactively or within another python codebase:from adc64format import dtypes, skip_chunks, parse_chunk, ADC64Reader

# Option 1: Parse a single event from an ordinary file object
with open('<ADC64 file>.data', 'rb') as f:

    # Load the first event
    chunk = parse_chunk(f)

    # Look at chunk data (as numpy arrays)
    for key in dtypes:
        print(chunk[key])

    # Skip N events
    n = 100
    skip_chunks(f, n)
    chunk = parse_chunk(f)


# Option 2: Parse events from multiple files and align by timestamp
with ADC64Reader('<ADC 64 file from ADC 0>.data', '<ADC 64 file from ADC 1>.data', ...) as reader:
    batch_size = 10 # how many events to load on each iteration
    events = reader.next(batch_size)

    # get matched events between multiple files
    events_file0, events_file1, ... = events

    # Look at data
    for key in dtypes:
        print(events_file0[key])
Package: adcami
Citrix ADC AWS AMI finderThis python package is used to find the latest AWS AMI for Citrix ADC productsUsageadcami-rREGION-pADC_PRODUCT_NAME-vADC_PRODUCT_VERSIONwhere (checkallowed values)-r | --region: AWS Region from which AMI is availableOPTIONAL: If not given, the region in the default AWS-CLI config is taken-p | --product: Citrix Product Name(default:Citrix ADC VPX - Customer Licensed)-v | --version: Citrix Product Version(default:13.0)Pre-requisitepip install adcamiAWSCLIAWSCLI ConfigurationAllowed ValuesAllowed Values for-r(enclose it in quotes)Citrix ADC VPX - Customer LicensedCitrix ADC VPX Express - 20 MbpsCitrix ADC VPX Standard Edition - 10 MbpsCitrix ADC VPX Standard Edition - 200 MbpsCitrix ADC VPX Standard Edition - 1000 MbpsCitrix ADC VPX Standard Edition - 3GbpsCitrix ADC VPX Standard Edition - 5GbpsCitrix ADC VPX Premium Edition - 10 MbpsCitrix ADC VPX Premium Edition - 200 MbpsCitrix ADC VPX Premium Edition - 1000 MbpsCitrix ADC VPX Premium Edition - 3GbpsCitrix ADC VPX Premium Edition - 5GbpsCitrix ADC VPX Advanced Edition - 10 MbpsCitrix ADC VPX Advanced Edition - 200 MbpsCitrix ADC VPX Advanced Edition - 1000 MbpsCitrix ADC VPX Advanced Edition - 3GbpsCitrix ADC VPX Advanced Edition - 5GbpsAllowed Values for-p(enclose it in quotes)13.0
Package: adcc
adcc: Seamlessly connect your program to ADCDocumentationBuild StatusInstallationadcc (ADC-connect) is a Python-based framework for calculating molecular spectra and electronically excited states
with the algebraic-diagrammatic construction (ADC) approach.Arbitrary host programs may be used to supply a
self-consistent field (SCF) reference to start off the ADC calculation.
Currently adcc comes with ready-to-use interfaces to four programs: PySCF, Psi4, VeloxChem and molsturm.
Adding other SCF codes or
starting a calculation from
statically computed data can be easily achieved.Try adcc in your browser athttps://try.adc-connect.orgor take a look at theadcc documentationfor more details and installation instructions.CitationPaper:Code:If you use adcc, please citeour paper in WIREs Computational Molecular Science.
A preprint can be foundon HALoron arXiv.
Package: adcc-backup
Copyright (c) <year> <copyright holders>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.Description: # adcc_backupPython package to manage the upload of bags to a remote serverPlatform: UNKNOWN
Requires-Python: >=3.7
Package: adcirc-rom
# ADCIRC ROM
ADCIRC ROM (Reduced-Order-Modeling) is suite of tools for developing surrogate machine learning models of storm surge.
The tools can be used both in an HPC and a single-threaded environment.## Designsafe QuickstartStart a Jupyter lab session.2. Use Jupyter lab to launch a terminal, and in the terminal run the following:` pip install netCDF4 sklearnglobal-land-maskxgboost geopandas scipy h5py fire git clonehttps://github.com/UT-CHG/adcirc-rom.gitcdadcirc-rompython3 dataset.py setup `This will create adatafolder with the subdirectoriesdatasets,stormsandmodels.
These subdirectories are needed for the model development workflow. Thedatasetsdirectory is used for storing
machine-learning ready datasets. Thestormsdirectory will contain the raw ADCIRC input (note when run within the DesignSafe
environment this directory will be prepopulated with a dataset of 446 synthetic ADCIRC simulations).
Finally, themodelsdataset is used for storing saved ML models and predictions.3. To generate a dataset, run the command` python3 dataset.py create default `This will create a dataset named ‘default’ in the directorydata/datasets.
This dataset can be used to train machine learning models.
Thedataset.pyscript takes a number of options that control the size and scope of the generated dataset,
as well as the included features.Note: with the default settings, dataset
creation in the Designsafe environment will take a few hours due to the lack of MPI support and the
size of the data to be processed. The dataset generation script supports parallization with MPI - and is significantly
faster when run on HPC resources such as TACC.4. To train and save a new model named ‘xgb_base’, using the dataset named default, run the command` python3 model.py train xgb_base--dataset=default`This will create a new model named ‘xgb_base’. During, training, a portion of the dataset is set aside
for testing purposes - predictions are generated for the test dataset and saved alongside the model binary.
Additional model training parameters can be passed to the script.To perform cross-validation, run the command` python3 model.py cv--dataset=default`This will also print out feature importances. Note that all model training parameters that are supported by thetrainare supported by thecvcommand as well. This allows for testing out of parameters before training a model.Finally, to generate predictions on a new dataset using a saved model, run` python3 model.py predict [modelname]--dataset=[datasetname]`All predictions can be accessed in the folderdata/datasets/[modelname].Please reach out with any questions or bug reports to Benjamin Pachev <benjamin.pachev@gmail.com>.
Package: adcm-version
ADCM versionNameADCM versionDescriptionThis package is intended to compare versions of theADCMproduct.Installationpip install adcm-versionUsagecompare_adcm_versions(version_a, version_b)- Compare two ADCM version strings, return 1 (ifais newer), 0 (if versions are equal), or -1 (ifbis newer)>>> from adcm_version import compare_adcm_versions
>>> compare_adcm_versions("2021.11.22.15", "2023.11.28.07")
-1compare_prototype_versions(version_a, version_b)- Compare two prototype version strings for ADCM objects, return 1 (ifais newer), 0 (if versions are equal), or -1 (ifbis newer)>>> from adcm_version import compare_prototype_versions
>>> compare_prototype_versions("2.1.10_b1", "2.1.6_b4")
1is_legacy(version)- returnTrue, if ADCM version format is old (for example2023.11.28.07), elseFalse>>> from adcm_version import is_legacy
>>> is_legacy("2021.11.22.15")
True
Package: adcom
class standart():
def wait() #wait until pressed ENTERclass Windows():
def notify(title, message, app_name='Python app', app_icon='none') #create a notification messagedef confirm(text) #create a notification message with select(OK or CANScEL)

def alert(text) #create a alert message

def question(text) #create a question messageclass cfg():
def read(file_name) #read cfg file to dict from type: {what} = {value}def write(file_name, what) #write cfg file from dict with type: {what} = {value}class table():
def reservation(text, x, mode=3) #create reservation for x symbols with assignment(1 - LEFT, 2 - MIDDLE, 3 - RIGHT)def table(column1, column2, mode=1) #create table from list column1, column2
Package: adcorr
This package provides a set of pure python functions for performing corrections on area
detector data.Install via PyPI with:pipinstalladcorrUseful LinksPyPIhttps://pypi.org/project/adcorr/Source codehttps://github.com/DiamondLightSource/adcorrDocumentationhttps://DiamondLightSource.github.io/adcorrReleaseshttps://github.com/DiamondLightSource/adcorr/releasesBrief ExampleA brief example of performing corrections using the library is presented below:frames=load_my_frames()mask=load_my_mask()count_times=load_count_times()frames=mask_frames(frames,mask)frames=correct_deadtime(frames,count_times,DETECTOR_MINIMUM_PULSE_SEPARATION,DETECTOR_MINIMUM_ARRIVAL_SEPARATION,)frames=correct_dark_current(frames,count_times,BASE_DARK_CURRENT,TEMPORAL_DARK_CURRENT,FLUX_DEPENDANT_DARK_CURRENT,)...Library CompatibilityLibraryTestsCoveragenumcertainPintSeehttps://DiamondLightSource.github.io/adcorrfor more detailed documentation.
Package: adc-sdk
Argonne Discovery Cloud SDK & CLIDocs:https://stage.discoverycloud.anl.gov/docs/sdk/InstallationWhen positioned in this repo's root directory:pip install adc-sdkCLI Commandsadc create-datafile
adc create-investigation
adc create-job
adc create-sample
adc create-study
adc create-token
adc current-user
adc datafile
adc delete-token
adc investigation
adc job
adc remove-permissions
adc sample
adc set-permissions
adc studies
adc study
adc subscribe-to-investigation
adc subscribe-to-job
adc subscribe-to-study
adc tokens
adc update-jobYou can runadc <command> --helpfor more information.LicenseThis project is licensed under the Apache License - see theLICENSEfile for details
Package: adc-socketx
adcxv0.1.1ADCsocket data eXchange py-script.GTLAB Diagnostic LLC, 2023Usage:$adcx[OPTIONS]COMMAND[ARGS]...Options:--help: Show this message and exit.Commands:get-info: Get the ADC information (s/n, frequency, channels, calibration).get-lan: Get lan configuration (port, ip, netmask, gateway, MAC).get-wav: Record a signal from the ADC to a .wav file.reboot: Reboot the ADC.set-lan: Set lan (ipv4) settings (ip/netmask, gateway).adcx get-infoGet the ADC information (s/n, frequency, channels, calibration).Usage:$adcxget-info[OPTIONS]Options:--ip TEXT: IPv4 connection address  [default: 192.168.0.50]--help: Show this message and exit.adcx get-lanGet lan configuration (port, ip, netmask, gateway, MAC).Usage:$adcxget-lan[OPTIONS]Options:--ip TEXT: IPv4 connection address  [default: 192.168.0.50]--help: Show this message and exit.adcx get-wavRecord a signal from the ADC to a .wav file.Usage:$adcxget-wav[OPTIONS]SECONDSArguments:SECONDS: [required]Options:--ch INTEGER RANGE: Set the number of channels to record  [default: 1; 1<=x<=2]--iepe / --no-iepe: [default: iepe]--ip TEXT: IPv4 connection address  [default: 192.168.0.50]--out FILE: Path and name (only .wav extension!) of the file to be written--help: Show this message and exit.adcx rebootReboot the ADC.Usage:$adcxreboot[OPTIONS]Options:--ip TEXT: IPv4 connection address  [default: 192.168.0.50]--help: Show this message and exit.adcx set-lanSet lan (ipv4) settings (ip/netmask, gateway).Usage:$set-lan[OPTIONS]IPV4[GATEWAY]Arguments:IPV4: New IPv4 address/netmask. Example: 192.168.0.50/24  [required][GATEWAY]: New IPv4 Gateway  [default: 192.168.0.1]Options:--ip TEXT: IPv4 connection address  [default: 192.168.0.50]--help: Show this message and exit.Contacts
Package: adc-streaming
Astronomy Data Commons Streaming Client LibrariesLibraries making it easy to access astronomy data commons resources.Developer notesSetupTo prepare for development, runpip install --editable ".[dev]"from within
the repo directory. This will install all dependencies, including those using
during development workflows.This project expects you to use apip-centric workflow for development on the
project itself. If you're using conda, then use the conda environment'spipto
install development dependencies, as described above.Integration tests require Docker to run a Kafka broker. The broker might have
network problems on OSX if you use Docker Desktop; run the tests in a Linux
virtual machine (like with VirtualBox) to get around this.Code WorkflowWrite code, making changes.Usemake formatto reformat your code to comply with PEP8.Usemake lintto catch common mistakes.Usemake test-quickto run fast unit tests.Usemake testto run the full slow test suite, including integration tests.Once satisfied with all four of those, push your changes and open a PR.Tag, build, and upload to PyPI and CondaTag a new version:git tag -s -a v0.x.xBuild and release:make pypi-dist
make pypi-dist-check
make pypi-upload
make conda-build
make conda-upload
Package: add-15-05-23
ADD TWO NUMBERSThis is an example project demonstrating how to publish a python module to PyPI.InstallationRun the following to install:
'''
python3
pip install add_15_05_23
'''##Usage
'''
python3
from add import add_numbersGenerate "25"add_numbers(15,10)
'''Developing add_numbersTo install add_numbers, along with tools you need to develop and run tests, run the following in your virtualenv:
'''
bash
$pip install -e .[dev]
'''
Package: add2winpath
add2winpathAdds/removes folders to the PATH on Windows (Current User/All Users). It doesn't spoil paths with variables (e.g. %windir%\system32)pip install add2winpathTested against Windows 10 / Python 3.10 / AnacondaUsage# Adds "folders" to the path (beginning) and removes "remove_from_path",# the function doesn't mess around with file paths containing variables like "%windir%\system32"fromadd2winpathimportadd_to_path_all_users,add_to_path_current_user,get_all_subfolders_from_foldercva0=add_to_path_current_user(folders=["c:\\cygwin\\bin",r"C:\baba ''bubu"],remove_from_path=["c:\\cygwin"],beginning=True,)cva1=add_to_path_all_users(folders=["c:\\cygwin\\bin","c:\\cygwin"],remove_from_path=["c:\cygwin3"],beginning=True,)allsubfolders=get_all_subfolders_from_folder(folders=[r"C:\cygwin\var\lib\rebase"])# list of all subfoldersadd_to_path_all_usersadd_to_path_all_users(folders:Union[str,List[str]],remove_from_path:Union[str,List[str]],beginning:bool=False)->strAddsthespecifiedfolderstothePATHenvironmentvariableforallusersonthesystem.Args:folders(Union[str,List[str]]):AstringorlistofstringsrepresentingthefolderstobeaddedtothePATH.remove_from_path(Union[str,List[str]]):AstringorlistofstringsrepresentingthefolderstoberemovedfromthePATH.beginning(bool,optional):AbooleanindicatingwhetherthefoldersshouldbeaddedtothebeginningorendofthePATH.DefaultstoFalse.Returns:str:AstringrepresentingtheregistryscriptthatwasexecutedtoupdatethePATHenvironmentvariable.add_to_path_current_useradd_to_path_current_user(folders:Union[str,List[str]],remove_from_path:Union[str,List[str]],beginning:bool=False)->strAddsthespecifiedfolderstothePATHenvironmentvariableofthecurrentuser.Args:folders(Union[str,List[str]]):Thefolder(s)tobeaddedtothePATHenvironmentvariable.remove_from_path(Union[str,List[str]]):Thefolder(s)toberemovedfromthePATHenvironmentvariable.beginning(bool,optional):IfTrue,thespecifiedfolderswillbeaddedtothebeginningofthePATHvariable.IfFalse,thespecifiedfolderswillbeaddedtotheendofthePATHvariable.DefaultstoFalse.Returns:str:ThestringrepresentationoftheregistrykeythatwasaddedtotheWindowsregistry.get_all_subfolders_from_folderget_all_subfolders_from_folder(folders:Union[str,List[str]])->List[str]Returnsasortedlistofuniquesubfoldernamescontainedwithinthespecifiedfolder(s).Args:folders(Union[str,List[str]]):Astringrepresentingthepath(s)tothefolder(s)tosearchforsubfolders.Returns:List[str]:Asortedlistofuniquesubfoldernamescontainedwithinthespecifiedfolder(s).
Package: addbioschemas
Adding bioschemas to mkdocsA small markdown extension to add bioschemas to mkdocs. It requires a yaml file with bioschemas markup, and adds it to the rendered html.InstallationpipinstalladdbioschemasUsageA markdown snippet of a page where you want to add bioschemas to:# awesome title[add-bioschemas]
I started with some YAML and turned it into JSON-LDA yaml file with the bioschemas markup:"@context":https://schema.org/"@type":LearningResource"@id":https://elixir-europe-training.github.io/ELIXIR-TrP-LessonTemplate-MkDocs/http://purl.org/dc/terms/conformsTo:"@type":CreativeWork"@id":https://bioschemas.org/profiles/TrainingMaterial/1.0-RELEASEdescription:Template for ELIXIR lessonskeywords:FAIR, OPEN, Bioinformatics, Teachingname:ELIXIR Training Lesson template# lookup at https://spdx.org/licenses/license:CC-BY-4.0author:-"@type":Personname:Geert van Geestemail:geert.vangeest@sib.swissgithub:GeertvanGeestorcid:0000-0002-1561-078X-"@type":Personname:Elin Kronandergithub:elinkronanderorcid:0000-0003-0280-6318Add tomkdocs.yml:markdown_extensions:-addbioschemas:yaml:'path/to/yaml/metadata.yaml'
Package: addcomments
django_database_colum_commentauto add comment for columns of MySQL or PostgreSQLthe propertyverbose_nameorhelp_textof the django model will be used ascommentfor columnsDatabase SupportedMySQLPostgreSQLHow to usethe model, you need to notice that the order verbose_name is at the first, then help_textname = models.CharField(max_length=200, verbose_name="名称", blank=True, default=None)
age = models.SmallIntegerField(help_text="年龄", blank=True, default=None)then, install the packagepip install addcommentsinsettings.pyadd appINSTALLED_APPS += [
    'addcomments',
]next, type commandpython manage.py addcolumncommentsfinally, the info will be printed, all the models created will be processed## MySQL 
-- FOR test_student.name 
        ALTER TABLE test_student
        MODIFY COLUMN `name` varchar(200) COLLATE utf8mb4_bin NOT NULL  COMMENT '名称'
-- FOR test_student.age 
        ALTER TABLE test_student
        MODIFY COLUMN `age` smallint(6) NOT NULL  COMMENT '年龄'

## PostgreSQL
-- FOR test_student.name 
        COMMENT ON COLUMN test_student.name IS '名称'
-- FOR test_student.age 
        COMMENT ON COLUMN test_student.age IS '年龄'If any bugyou can fix by yourself or commit your issue here, I will fix it
Package: added-value
A Sphinx extension for embedding Python objectvaluesinto documentation as text, lists
or tables.This is achieved by adding new roles and directives which refer to Python objects which contain
the values to be represented. The extension provides roles for embedded single and lists of values,
and a sophisticated directive for rendering complex data structures like lists of dictionaries as
tables.StatusBuild status:InstallationTheadded-valuepackage is available on the Python Package Index (PyPI):The package supports Python 3 only. To install:$ pip install added-valueUsageAdded Valueprovides a number of roles and directives for embedding Python values into your
documentation. For example, sing added value we can extract the value ofpifrom the Python
Standard Librarymathmodule, and embed it in a sentence, using theformatrole provided
byAdded Values, like this:The ratio of the circumference to the diameter of a circle is :format:`math.pi, .3f` to three
decimal places.Which gives:The ratio of the circumference to the diameter of a circle is 3.142 to three
decimal places.Powerful toolsAdded value is powerful, and allows lists, dictionaries, and even complex data structures such as
lists of lists of dictionaries to be rendered into tables in various ways. Consult thedocumentationfor more details.Copyright 2023 Sixty North ASRedistribution and use in source and binary forms, with or without modification, are permitted provided that the
following conditions are met:Redistributions of source code must retain the above copyright notice, this list of conditions and the following
disclaimer.Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided with the distribution.Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.