Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update vaegan.py #48

Draft
wants to merge 763 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
763 commits
Select commit Hold shift + click to select a range
3c4d9f8
Update __init__.py
Saran-nns Dec 14, 2020
b4e1aea
Update __init__.py
Saran-nns Dec 14, 2020
5cf483a
Update __init__.py
Saran-nns Dec 14, 2020
57c1616
Update train.py
Saran-nns Dec 14, 2020
3cd039b
update init
Saran-nns Dec 16, 2020
0390463
optimizers fix
Saran-nns Dec 16, 2020
c5861c8
Update ae.py
Saran-nns Dec 16, 2020
4e32f7f
Update ae.py
Saran-nns Dec 16, 2020
1bc4fad
Update ae.py
Saran-nns Dec 16, 2020
d7041b8
Update optimizers.py
Saran-nns Dec 16, 2020
e48ea61
Update train.py
Saran-nns Dec 16, 2020
e7b6005
Update train.py
Saran-nns Dec 16, 2020
7305125
Update optimizers.py
Saran-nns Dec 16, 2020
c3aee77
Update train.py
Saran-nns Dec 16, 2020
9f34738
Update train.py
Saran-nns Dec 16, 2020
fc8ec9e
optimizer fix
Saran-nns Dec 16, 2020
4841df3
optimizer fix
Saran-nns Dec 16, 2020
33317c8
Update train.py
Saran-nns Dec 16, 2020
11bdb1a
optimizer, ae classifier loss fix
Saran-nns Dec 16, 2020
78c49e6
Update losses.py
Saran-nns Dec 16, 2020
69e1320
vae fix
Saran-nns Dec 16, 2020
b127d94
Update vae.py
Saran-nns Dec 16, 2020
26a505d
Update vae.py
Saran-nns Dec 16, 2020
eeaf53e
Update vae.py
Saran-nns Dec 16, 2020
7ae91f5
vae fix
Saran-nns Dec 16, 2020
bc9546d
Update train.py
Saran-nns Dec 16, 2020
49cce92
lstm fix
Saran-nns Dec 17, 2020
6dc2157
lstm fix
Saran-nns Dec 17, 2020
293686a
Update optimizers.py
Saran-nns Dec 17, 2020
e7230ae
lstm opt fix
Saran-nns Dec 17, 2020
dda967e
Update optimizers.py
Saran-nns Dec 17, 2020
0030a25
Update optimizers.py
Saran-nns Dec 17, 2020
d1753e9
lstm fix
Saran-nns Dec 17, 2020
577389a
Update optimizers.py
Saran-nns Dec 17, 2020
b01c65a
lstm optim fix
Saran-nns Dec 17, 2020
8d80fe0
lstm optim fix
Saran-nns Dec 17, 2020
4c0fded
Update train.py
Saran-nns Dec 17, 2020
0431395
Update train.py
Saran-nns Dec 17, 2020
bcec0a9
Update optimizers.py
Saran-nns Dec 17, 2020
ff32aae
Update optimizers.py
Saran-nns Dec 17, 2020
7140a22
Update optimizers.py
Saran-nns Dec 17, 2020
79d7d30
lstm optim fix
Saran-nns Dec 17, 2020
10573c1
Update train.py
Saran-nns Dec 17, 2020
bb1c22b
lstm optim fix
Saran-nns Dec 17, 2020
6099bc1
Update optimizers.py
Saran-nns Dec 17, 2020
39a1e1d
Update train.py
Saran-nns Dec 17, 2020
27da657
documentation, lstm,ae,vae wrappers, trainers
Saran-nns Dec 18, 2020
a11d274
Send vae encoder tensors to device
WolfByttner Dec 18, 2020
0eade4f
Import MultiModalVAE
WolfByttner Dec 18, 2020
37df291
Pass only latent output to decoder
WolfByttner Dec 18, 2020
b714d92
Multiply latent size by 2 in vae
WolfByttner Dec 18, 2020
8fbad1b
Update train.py
Saran-nns Dec 18, 2020
332be0e
Update train.py
Saran-nns Dec 18, 2020
b875487
lstm update
Saran-nns Dec 18, 2020
84fc5e5
Update vae.py
Saran-nns Dec 18, 2020
41dda6f
Update vae.py
Saran-nns Dec 18, 2020
b39d94a
classifier update
Saran-nns Dec 18, 2020
3487583
classifier update
Saran-nns Dec 18, 2020
b4d6c2d
classifier fix
Saran-nns Dec 18, 2020
05103eb
classifier fix
Saran-nns Dec 18, 2020
7ff299e
docs, lstm,ae,vae fix
Saran-nns Dec 18, 2020
7691199
Update train.py
Saran-nns Dec 19, 2020
a42f7dc
initial update custom model support
Saran-nns Dec 26, 2020
684e533
custom trainer, user defined models, traja trainer, visualizer, manif…
Saran-nns Dec 28, 2020
4ba4ace
CustomTrainer test
Saran-nns Dec 28, 2020
ffb475e
Update train.py
Saran-nns Dec 28, 2020
79bcf80
Update train.py
Saran-nns Dec 28, 2020
2c4ecaa
Update optimizers.py
Saran-nns Dec 28, 2020
d8dee5e
optimizer custom model update
Saran-nns Dec 28, 2020
c5eae6b
Update optimizers.py
Saran-nns Dec 28, 2020
b4ccc24
custom model opt update
Saran-nns Dec 28, 2020
48569ba
Update train.py
Saran-nns Dec 28, 2020
ed9796f
custom model opt, scheduler fix
Saran-nns Dec 28, 2020
855b316
Update losses.py
Saran-nns Dec 28, 2020
f251cc9
Update train.py
Saran-nns Dec 28, 2020
205c98a
Fix assertion, formatting, train switching
JustinShenk Dec 28, 2020
abb050a
generator, predictor, model,hyper save,load and infer update
Saran-nns Dec 29, 2020
11360f9
Update train.py
Saran-nns Dec 29, 2020
fd0a145
lstms,ae,vae init requires grad set
Saran-nns Dec 29, 2020
1da0d62
Update utils.py
Saran-nns Dec 29, 2020
fc1a552
network and embedding visualizer update
Saran-nns Dec 29, 2020
10ef1bf
Add manhattan, mse and ae losses
WolfByttner Dec 29, 2020
c60c9b7
Add Neural Network tests
WolfByttner Dec 29, 2020
ab1d4d6
Add classifier accuracy
WolfByttner Dec 29, 2020
0f3779f
tbptt for lstm sequences
Saran-nns Dec 29, 2020
ce31385
Update utils.py
Saran-nns Dec 29, 2020
013c3c4
Update train.py
Saran-nns Dec 29, 2020
c380cf3
Update train.py
Saran-nns Dec 29, 2020
1dfad2b
Update visualizer.py
Saran-nns Dec 29, 2020
c143822
Update visualizer.py
Saran-nns Dec 29, 2020
d541d80
viz test
Saran-nns Dec 29, 2020
80d85d8
viz test
Saran-nns Dec 29, 2020
2fdec3b
Update utils.py
Saran-nns Dec 29, 2020
84154bd
Custom trainer viz test
Saran-nns Dec 29, 2020
7b0e0fb
Update utils.py
Saran-nns Dec 29, 2020
ff14338
Update __init__.py
Saran-nns Dec 29, 2020
0dd95ee
generator and predictor update
Saran-nns Dec 29, 2020
f9963cf
Update generator.py
Saran-nns Dec 29, 2020
e287758
Update generator.py
Saran-nns Dec 29, 2020
1416bb9
trained model load fix
Saran-nns Dec 29, 2020
3efc863
model reload and infer fix
Saran-nns Dec 30, 2020
0907523
generator update
Saran-nns Dec 30, 2020
2ced5ce
Update inference.py
Saran-nns Dec 30, 2020
e8799eb
Update inference.py
Saran-nns Dec 30, 2020
3dd70d8
predictor update
Saran-nns Dec 30, 2020
3c259da
Update ae.py
Saran-nns Dec 30, 2020
d3bea27
Update ae.py
Saran-nns Dec 30, 2020
90d095c
dataloader and scalers as dict
Saran-nns Dec 30, 2020
a469793
Update dataset.py
Saran-nns Dec 30, 2020
bfb8cf1
inference, do scaling on orginal and generated data
Saran-nns Dec 30, 2020
889e43e
Update inference.py
Saran-nns Jan 1, 2021
df82c24
Update inference.py
Saran-nns Jan 1, 2021
8d42227
Update inference.py
Saran-nns Jan 1, 2021
ea3896f
Update inference.py
Saran-nns Jan 1, 2021
50d7ee4
Add simply HybridTrainer test
WolfByttner Dec 30, 2020
a3b93de
Update gitignore
WolfByttner Dec 30, 2020
1d30c90
Update pip requirements
WolfByttner Dec 30, 2020
391f0b9
Make epochs a dynamic argument in trainer
WolfByttner Dec 30, 2020
d59d59d
Ignore model parameter files
WolfByttner Dec 30, 2020
73ca7c2
Make model an argument in VAE trainer
WolfByttner Dec 30, 2020
d3cfc68
Make HybridTrainer train LSTMs
WolfByttner Dec 31, 2020
3e065c2
Move optimizer tests to dedicated file
WolfByttner Dec 31, 2020
37878dc
Remove redundant test
WolfByttner Dec 31, 2020
e0b862e
Remove redundant LSTM trainer
WolfByttner Dec 31, 2020
09d6f1d
Fix ae classification bug
WolfByttner Dec 31, 2020
2edfff6
Remove dead code
WolfByttner Dec 31, 2020
698a504
Temporarily remove failing tests
WolfByttner Dec 31, 2020
35c3271
Add regressor training to HybridTrainer
WolfByttner Dec 31, 2020
53007dd
Make test_loader not generate a list
WolfByttner Dec 31, 2020
f1f9ca5
Assert that train data ratio is positive
WolfByttner Dec 31, 2020
c4ef5f6
Format utils file
WolfByttner Dec 31, 2020
9523698
Format code
WolfByttner Dec 31, 2020
0f99058
Work around torch collate behaviour
WolfByttner Dec 31, 2020
878094f
Remove debug
WolfByttner Dec 31, 2020
ba93f0d
Add missing parenthesis
WolfByttner Dec 31, 2020
17a8172
Make parameters floating
WolfByttner Dec 31, 2020
291a378
Update inference.py
Saran-nns Jan 1, 2021
e4438c5
Update utils.py
Saran-nns Jan 1, 2021
f6ce461
Simplify classifier step in trainer
WolfByttner Jan 1, 2021
5f54c92
Add torch and other libraries to requirements.txt
WolfByttner Jan 1, 2021
5fd1cd0
Move pytest to requirements-dev.txt
WolfByttner Jan 1, 2021
cc183d8
Cleaning up rebase
WolfByttner Jan 1, 2021
c3e1ff8
Update docs requirements.txt
WolfByttner Jan 1, 2021
6450f0b
Update docs example files
WolfByttner Jan 1, 2021
38f462e
Testing Travis dependencies workaround
WolfByttner Jan 1, 2021
b0a374e
Remove docs rpy2 requirement
WolfByttner Jan 1, 2021
688fcf5
Remove obsolete, broken config
WolfByttner Jan 1, 2021
9db887b
Fix Python 3.8 changed-behaviour bug
WolfByttner Jan 2, 2021
fefd7e7
Set Pandas version >= 1.2.0
WolfByttner Jan 2, 2021
c09b749
Merge pull request #33 from traja-team/vae.rebase
WolfByttner Jan 2, 2021
6021f5f
Make Jaguar an example dataset
WolfByttner Jan 2, 2021
c72342c
Add LSTM prediction documentation
WolfByttner Jan 2, 2021
da86baf
Remove rpy2 support
JustinShenk Jan 2, 2021
f316ea7
Remove rpy2 support
JustinShenk Jan 2, 2021
cb005b6
Remove rpy2 support
JustinShenk Jan 2, 2021
f017f56
Remove rpy2 support
JustinShenk Jan 2, 2021
111a40f
Remove rpy2 support
JustinShenk Jan 2, 2021
d8c1899
Fix actogram plot and tests
JustinShenk Jan 2, 2021
d03eab9
Merge branch 'master' into remove-rpy2
JustinShenk Jan 2, 2021
30da0c0
Merge pull request #34 from traja-team/vae.docs
JustinShenk Jan 2, 2021
d055ef0
validation data update
Saran-nns Jan 2, 2021
e456902
Remove scipy docs link
JustinShenk Jan 4, 2021
756b792
Merge branch 'remove-rpy2' of github.com:justinshenk/traja into remov…
JustinShenk Jan 4, 2021
c1a04a1
Merge pull request #35 from traja-team/remove-rpy2
WolfByttner Jan 4, 2021
4b6e651
Remove 'R interface' header from docs
WolfByttner Jan 5, 2021
20595fa
Remove R Utils tests
WolfByttner Jan 5, 2021
0072e29
Remove conf pointing to deleted file
WolfByttner Jan 5, 2021
eb44e6f
todo setup dataloaders wrt test train, validation and scalers
Saran-nns Jan 5, 2021
d0605c6
Add first plotter, using batch size 1
WolfByttner Jan 3, 2021
bda8019
Merge pull request #36 from traja-team/docs.rinterface
JustinShenk Jan 6, 2021
8f63df5
Add category-wise sampling
WolfByttner Jan 6, 2021
511403a
Reformat code
WolfByttner Jan 7, 2021
14fe3e3
Add fancy assert strings
WolfByttner Jan 7, 2021
b6e848a
Fixed import in datasets
MaddyThakker Jan 7, 2021
ed4d421
Merge branch 'master' into datagenerator
WolfByttner Jan 8, 2021
37c0fe0
Merge branch 'plotting_updates' into datagenerator
WolfByttner Jan 8, 2021
fcaf550
Merge pull request #37 from MaddyThakker/master
JustinShenk Jan 8, 2021
f22c34b
Fix broken image link
JustinShenk Jan 8, 2021
6b21502
Update README.rst
JustinShenk Jan 8, 2021
c488da1
Update scikit-learn dependency
WolfByttner Jan 9, 2021
39608ab
Make category-wise sampling faster
WolfByttner Jan 10, 2021
7b90043
Add sequential loaders
WolfByttner Jan 10, 2021
9990094
Fix drop_last heisenbug
WolfByttner Jan 10, 2021
424b855
Fix second test heisenbug
WolfByttner Jan 10, 2021
9996fa8
Merge branch 'master' into datagenerator
WolfByttner Jan 10, 2021
931a09f
Make plotting work with dataloader
WolfByttner Jan 10, 2021
9fcfae3
Fix formatting
WolfByttner Jan 10, 2021
8802220
Fix codecov link
JustinShenk Jan 10, 2021
ea48101
Update README.rst
JustinShenk Jan 10, 2021
77a4871
Update .travis.yml
JustinShenk Jan 10, 2021
2547a3f
Add stride to dataset arguments.
WolfByttner Jan 11, 2021
a373de3
Propagate Stride all the way
WolfByttner Jan 11, 2021
ff77af4
Add time-based dataloader separation
WolfByttner Jan 13, 2021
f21c63f
Make test loss print after 10 epochs
WolfByttner Jan 14, 2021
16141a1
Correct forecasting test loss print
WolfByttner Jan 14, 2021
990fd28
Add regressor support to dataloader
WolfByttner Jan 14, 2021
26f03d0
Correctly normalise training loss
WolfByttner Jan 14, 2021
64d9c15
Add parameter to dataset
WolfByttner Jan 14, 2021
9b9b2f4
Make tests run only on 10th epoch
WolfByttner Jan 14, 2021
354af77
Add time_based dataloader test with short stride
WolfByttner Jan 14, 2021
2e76f31
Make sequential sets be sequential
WolfByttner Jan 14, 2021
8ba1ec2
Add nonlinear layers to VAE classifier + regressor
WolfByttner Jan 14, 2021
0215125
Add sequential dataloader checks
WolfByttner Jan 15, 2021
dc7192b
Check that dataloader indices do not overlap
WolfByttner Jan 15, 2021
c91ca63
Let users reset vae classifier and regressor
WolfByttner Jan 15, 2021
8d20816
Add reset_classifier and reset_regressor docstrings
WolfByttner Jan 15, 2021
734f961
Merge branch 'master' into datagenerator
WolfByttner Jan 16, 2021
8c0e370
Remove unused code in dataset/utils
WolfByttner Jan 16, 2021
7777167
Add weighted dataloaders
WolfByttner Jan 16, 2021
4896ff3
Remove obsolete code
WolfByttner Jan 16, 2021
3bf5aa6
Scaler is no longer a dict
WolfByttner Jan 16, 2021
683a6af
Remove dead code in utils
WolfByttner Jan 16, 2021
3aec2ba
Remove dead imports
WolfByttner Jan 16, 2021
d391a85
Test division-by-zero in id-based sampling
WolfByttner Jan 16, 2021
08e9053
Make plot_prediction move data to cpu so Numpy does not complain
WolfByttner Jan 16, 2021
9b779c6
Correct batch size for more accurate sampling
WolfByttner Jan 16, 2021
7ace8bc
Add stride one sampler test
WolfByttner Jan 16, 2021
05274b9
Clean up dataset imports
WolfByttner Jan 16, 2021
2a02f35
Optimise __init__ files
WolfByttner Jan 16, 2021
ac36d83
Update plot_prediction with history
WolfByttner Jan 16, 2021
ca8b526
Add inference test
WolfByttner Jan 16, 2021
fed1fe0
Remove old set validation code
WolfByttner Jan 16, 2021
6422314
Add self.num_past to LSTM
WolfByttner Jan 16, 2021
8675ac8
Add coverage of Traja models
WolfByttner Jan 16, 2021
29a4cf1
Move codecov.yml so codecov can see it
WolfByttner Jan 16, 2021
ef22198
Make codecov cover everything
WolfByttner Jan 16, 2021
f034499
Remove dead code
WolfByttner Jan 16, 2021
98c37d6
Remove trainers that are no longer needed
WolfByttner Jan 16, 2021
42135fe
Add convergence criterion to regression test
WolfByttner Jan 16, 2021
211da48
Move trainer validate functionality into separate function
WolfByttner Jan 16, 2021
13ce751
Propagate loss type to criterion
WolfByttner Jan 16, 2021
0cfe728
Test network utility functions
WolfByttner Jan 16, 2021
15b4e65
Remove dead code
WolfByttner Jan 16, 2021
140e682
Reformat code
WolfByttner Jan 16, 2021
34f583b
Add plot_prediction to docs
WolfByttner Jan 16, 2021
d4ad805
Update documentation with parameter searching
WolfByttner Jan 16, 2021
b6fb003
Add loss tests
WolfByttner Jan 16, 2021
8b745f2
Reuse classifier, regressor in both ae and vae
WolfByttner Jan 16, 2021
e3dcf25
Merge pull request #39 from traja-team/datagenerator
JustinShenk Jan 17, 2021
3e58eb2
Update vaegan.py
Saran-nns Jan 31, 2021
81985e9
Update test_models.py
Saran-nns Jan 31, 2021
e4298c9
Update vaegan.py
Saran-nns Jan 31, 2021
5703589
Update vaegan.py
Saran-nns Jan 31, 2021
fd2ef58
Update vaegan.py
Saran-nns Jan 31, 2021
c1deae0
Update vaegan.py
Saran-nns Jan 31, 2021
17a8fc1
Update vaegan.py
Saran-nns Jan 31, 2021
f6efdc7
Update vaegan.py
Saran-nns Jan 31, 2021
bf2b592
Update vaegan.py
Saran-nns Jan 31, 2021
11cdec2
Update vaegan.py
Saran-nns Jan 31, 2021
0e4aa9c
Update vaegan.py
Saran-nns Jan 31, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[bumpversion]
current_version = 0.2.0.dev0
commit = True
tag = False
files = traja/__init__.py
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\.(?P<release>[a-z]+)(?P<n>\d+))?
serialize =
{major}.{minor}.{patch}.{release}{n}
{major}.{minor}.{patch}

[bumpversion:part:release]
optional_value = post
first_value = dev
values =
dev
post

[bumpversion:part:n]

10 changes: 10 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[report]
exclude_lines =
pragma: no cover
def __repr__
raise AssertionError
raise NotImplementedError
if __name__ == .__main__.:
omit =
traja/tests/*
traja/contrib/*
129 changes: 129 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
# 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/
*.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/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# pyenv
.python-version

.DS_Store

# Visualstudio code file
.vscode
# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/

.idea

_build/

# BUILD FILES
*.zip
hypers.json
model

docs/source/gallery
docs/source/savefig
docs/source/reference

# Editor files
*.swp
*.swo


# Model parameter files
*.pt
6 changes: 6 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
repos:
- repo: https://github.com/ambv/black
rev: stable
hooks:
- id: black
language_version: python3.7
17 changes: 17 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
version: 2
sphinx:
configuration: docs/source/conf.py

formats: all

build:
image: latest

python:
version: 3.7
install:
- method: pip
path: .
- requirements: docs/requirements.txt
conda:
environment: docs/environment.yml
52 changes: 52 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
sudo: false

dist: xenial

language: python

python:
- '3.7'
- '3.8'

git:
depth: false

env:
- MPLBACKEND=Agg CODECOV_TOKEN="287389e5-8f99-42e1-8844-17acef7c454f"

cache: pip

before_install:
- sudo apt-get update

install:
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
-O miniconda.sh
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- hash -r
- conda config --set always_yes yes --set changeps1 no
- conda update -q conda
- conda create -q -n test-environment python=$TRAVIS_PYTHON_VERSION
- source activate test-environment
- pip install -r requirements-dev.txt
- pip install -r docs/requirements.txt
- pip install --upgrade pytest flake8 sphinx
- pip install .
script:
- cd docs && make doctest && cd ..
- py.test . --cov-report term --cov=traja

after_success:
- codecov

deploy:
provider: pypi
user: jshenk
skip_cleanup: true
skip_existing: true
on:
tags: true
branch: master
password:
secure: o5ON/6Q4aORM4dgTVUQ39w0N+Gc+6Ala+K5J16b5lnNWGgHglqIlJzYXJo8THpeNYTm6ZbEDQEFurCTEKA/MZ2WzreePWQ4Z4E2dIihqhI+71rSbForRPKunV2CEr/QQdUEzXe6npO2UTnO0zDS5XMSrlBncKO4F4zUvrYTuXLj5fES0IFiFHMWxEpNaXMKiypfcRIKJriRbHY22/H8uSgzFluxRG+UqpbJz+R94bqIg30wBJw4nI9JMI00Du67eCO91t+aQ26+5Am+DqA6+jawd89OVPxtlLSdWtgtxPmWAD/IBLP2d7sqfK+QnezmH8NuAMB6DJdTkbscHcvYT8itHg8csBDdvfH8xoA9x8f+Cc60gviKaBoayORFF7FXkjyAYTCSfEi2dfxTTDR0UisbEG99k0+25+DMHxdC8z7/NQz4qal2vKfhPe8kTsOPQLwh0EHmdVU+v9M9LgrLhN55/lI/a6w+zL1/BJ6ZO6arMhHLVmgRtHP+Ckq6OKwQJYNwZxsg8PfwZxl0jFfd3yVX9lS9s95An90z9mEPheC8zQNz2fzAZUZun6GI9u/FCrGpMbrzKzq4R0UtNc8mfipHJ/v027+C2x43wkXA0c6Zvf9b7i6Bgm6EonnTagWrkQ0RdwqiKDd3smfgK2QZzD4G9vuv6z0w5CFhHL9v1Oc0=
7 changes: 7 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Copyright 2019 Justin Shenk

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.
Loading