commit 5d0208ef2db21f61ba7bee28a3a6fd0324f2b118 Author: alphyron Date: Tue Dec 1 16:32:54 2020 +0000 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fbac9c9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,157 @@ +# ---> Go +# Binaries for programs and plugins +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Test binary, build with `go test -c` +*.test + +# Output of the go coverage tool, specifically when used with LiteIDE +*.out + +# ---> VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# ---> JetBrains +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +# ---> Windows +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# ---> Linux +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +# ---> macOS +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..0217ba5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,279 @@ +Open CASCADE Technology Public License + +Version 6.6, April 2013 + +OPEN CASCADE releases and makes publicly available the source code of the +software Open CASCADE Technology to the free software development community +under the terms and conditions of this license. + +It is not the purpose of this license to induce you to infringe any patents +or other property right claims or to contest validity of any such claims; +this license has the sole purpose of protecting the integrity of the free +software distribution system, which is implemented by public license practices. +Many people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +Please read this license carefully and completely before downloading this +software. By downloading, using, modifying, distributing and sublicensing +this software, you indicate your acceptance to be bound by the terms and conditions +of this license. If you do not want to accept or cannot accept for any reasons +the terms and conditions of this license, please do not download or use in +any manner this software. + + 1. Definitions + +Unless there is something in the subject matter or in the context inconsistent +therewith, the capitalized terms used in this License shall have the following +meaning. + +"Applicable Intellectual Property Rights" means (a) with respect to the Initial +Developer, any rights under patents or patents applications or other intellectual +property rights that are now or hereafter acquired, owned by or assigned to +the Initial Developer and that cover subject matter contained in the Original +Code, but only to the extent necessary to use, reproduce, modify, distribute +or sublicense the Original Code without infringement; and (b) with respect +to You or any Contributor, any rights under patents or patents applications +or other intellectual property rights that are now or hereafter acquired, +owned by or assigned to You or to such Contributor and that cover subject +matter contained in Your Modifications or in such Contributor's Modifications, +taken alone or in combination with Original Code. + +"Contributor" means each individual or legal entity that creates or contributes +to the creation of any Modification, including the Initial Developer. + +"Derivative Program": means a new program combining the Software or portions +thereof with other source code not governed by the terms of this License. + +"Initial Developer": means OPEN CASCADE, with main offices at 1, place des +Frères Montgolfier, 78280, Guyancourt, France. + +"Modifications": mean any addition to, deletion from or change to the substance +or the structure of the Software. When source code of the Software is released +as a series of files, a Modification is: (a) any addition to, deletion from +or change to the contents of a file containing the Software or (b) any new +file or other representation of computer program statements that contains +any part of the Software. By way of example, Modifications include any debug +of, or improvement to, the Original Code or any of its components or portions +as well as its next versions or releases thereof. + +"Original Code": means (a) the source code of the software Open CASCADE Technology +originally made available by the Initial Developer under this License, including +the source code of any updates or upgrades of the Original Code and (b) the +object code compiled from such source code and originally made available by +Initial Developer under this License. + +"Software": means the Original Code, the Modifications, the combination of +Original Code and any Modifications or any respective portions thereof. + +"You" or "Your": means an individual or a legal entity exercising rights under +this License + + 2. Acceptance of license + +By using, reproducing, modifying, distributing or sublicensing the Software +or any portion thereof, You expressly indicate Your acceptance of the terms +and conditions of this License and undertake to act in accordance with all +the provisions of this License applicable to You. + + 3. Scope and purpose + +This License applies to the Software and You may not use, reproduce, modify, +distribute, sublicense or circulate the Software, or any portion thereof, +except as expressly provided under this License. Any attempt to otherwise +use, reproduce, modify, distribute or sublicense the Software is void and +will automatically terminate Your rights under this License. + + 4. Contributor license + +Subject to the terms and conditions of this License, the Initial Developer +and each of the Contributors hereby grant You a world-wide, royalty-free, +irrevocable and non-exclusive license under the Applicable Intellectual Property +Rights they own or control, to use, reproduce, modify, distribute and sublicense +the Software provided that: + +You reproduce in all copies of the Software the copyright and other proprietary +notices and disclaimers of the Initial Developer as they appear in the Original +Code and attached hereto as Schedule "A" and any other notices or disclaimers +attached to the Software and keep intact all notices in the Original Code +that refer to this License and to the absence of any warranty; + +You include a copy of this License with every copy of the Software You distribute; + +If you distribute or sublicense the Software (as modified by You or on Your +behalf as the case may be), You cause such Software to be licensed as a whole, +at no charge, to all third parties, under the terms and conditions of the +License, making in particular available to all third parties the source code +of the Software; + +You document all Your Modifications, indicate the date of each such Modification, +designate the version of the Software You used, prominently include a file +carrying such information with respect to the Modifications and duplicate +the copyright and other proprietary notices and disclaimers attached hereto +as Schedule "B" or any other notices or disclaimers attached to the Software +with your Modifications. + +For greater certainty, it is expressly understood that You may freely create +Derivative Programs (without any obligation to publish such Derivative Program) +and distribute same as a single product. In such case, You must ensure that +all the requirements of this License are fulfilled for the Software or any +portion thereof. + + 5. Your license + +You hereby grant all Contributors and anyone who becomes a party under this +License a world-wide, non-exclusive, royalty-free and irrevocable license +under the Applicable Intellectual Property Rights owned or controlled by You, +to use, reproduce, modify, distribute and sublicense all Your Modifications +under the terms and conditions of this License. + + 6. Software subject to license + +Your Modifications shall be governed by the terms and conditions of this License. +You are not authorized to impose any other terms or conditions than those +prevailing under this License when You distribute and/or sublicense the Software, +save and except as permitted under Section 7 hereof. + + 7. Additional terms + +You may choose to offer, on a non-exclusive basis, and to charge a fee for +any warranty, support, maintenance, liability obligations or other rights +consistent with the scope of this License with respect to the Software (the +"Additional Terms") to the recipients of the Software. However, You may do +so only on Your own behalf and on Your sole and exclusive responsibility. +You must obtain the recipient's agreement that any such Additional Terms are +offered by You alone, and You hereby agree to indemnify, defend and hold the +Initial Developer and any Contributor harmless for any liability incurred +by or claims asserted against the Initial Developer or any Contributors with +respect to any such Additional Terms. + + 8. Disclaimer of warranty + +The Software is provided under this License on an "as is" basis, without warranty +of any kind, including without limitation, warranties that the Software is +free of defects, merchantable, fit for a particular purpose or non-infringing. +The entire risk as to the quality and performance of the Software is with +You. + + 9. Liability + +Under no circumstances shall You, the Initial Developer or any Contributor +be liable to any person for any direct or indirect damages of any kind including, +without limitation, damages for loss of goodwill, loss of data, work stoppage, +computer failure or malfunction or any and all other commercial damages or +losses resulting from or relating to this License or indirectly to the use +of the Software. + + 10. Trademark + +This License does not grant any rights to use the trademarks, trade names +and domain names "MATRA", "EADS Matra Datavision", "CAS.CADE", "Open CASCADE", +"opencascade.com" and "opencascade.org" or any other trademarks, trade names +or domain names used or owned by the Initial Developer. + + 11. Copyright + +The Initial Developer retains all rights, title and interest in and to the +Original Code. You may not remove the copyright © notice which appears when +You download the Software. + + 12. Term + +This License is granted to You for a term equal to the remaining period of +protection covered by the intellectual property rights applicable to the Original +Code. + + 13. Termination + +In case of termination, as provided in Section 3 above, You agree to immediately +stop any further use, reproduction, modification, distribution and sublicensing +of the Software and to destroy all copies of the Software that are in Your +possession or control. All sublicenses of the Software which have been properly +granted prior to termination shall survive any termination of this License. +In addition, Sections 5, 8 to 11, 13.2 and 15.2 of this License, in reason +of their nature, shall survive the termination of this License for a period +of fifteen (15) years. + + 14. Versions of the license + +The Initial Developer may publish new versions of this License from time to +time. Once Original Code has been published under a particular version of +this License, You may choose to continue to use it under the terms and conditions +of that version or use the Original Code under the terms of any subsequent +version of this License published by the Initial Developer. + + 15. Miscellaneous + +15.1 Relationship of the Parties This License will not be construed as creating +an agency, partnership, joint venture or any other form of legal association +between You and the Initial Developer, and You will not represent to the contrary, +whether expressly, by implication or otherwise. + +15.2 Independent Development Nothing in this License will impair the Initial +Developer's right to acquire, license, develop, have others develop for it, +market or distribute technology or products that perform the same or similar +functions as, or otherwise compete with, Modifications, Derivative Programs, +technology or products that You may develop, produce, market or distribute. + +15.3 Severability If for any reason a court of competent jurisdiction finds +any provision of this License, or portion thereof, to be unenforceable, that +provision of the License will be enforced to the maximum extent permissible +so as to effect the economic benefits and intent of the parties, and the remainder +of this License will continue in full force and extent. END OF THE TERMS AND +CONDITIONS OF THIS LICENSE + +OPEN CASCADE is a French société par actions simplifiée having its registered +head office at 1, place des Frères Montgolfier, 78280, Guyancourt, France +and main offices at 1, place des Frères Montgolfier, 78280, Guyancourt, France. +Its web site is located at the following address opencascade.com + +Open CASCADE Technology Public License + +Schedule "A" + +The content of this file is subject to the Open CASCADE Technology Public +License (the "License"). You may not use the content of this file except in +compliance with the License. Please obtain a copy of the License at opencascade.com +and read it completely before using this file. + +The Initial Developer of the Original Code is OPEN CASCADE, with main offices +at 1, place des Frères Montgolfier, 78280, Guyancourt, France. The Original +Code is copyright © OPEN CASCADE SAS, 2001. All rights reserved. "The Original +Code and all software distributed under the License are distributed on an +"AS IS" basis, without warranty of any kind, and the Initial Developer hereby +disclaims all such warranties, including without limitation, any warranties +of merchantability, fitness for a particular purpose or non-infringement. + +Please see the License for the specific terms and conditions governing rights +and limitations under the License". + +End of Schedule "A" + +Open CASCADE Technology Public License + +Schedule "B" + +"The content of this file is subject to the Open CASCADE Technology Public +License (the "License"). You may not use the content of this file except in +compliance with the License. Please obtain a copy of the License at opencascade.com +and read it completely before using this file. + +The Initial Developer of the Original Code is OPEN CASCADE, with main offices +at 1, place des Frères Montgolfier, 78280, Guyancourt, France. The Original +Code is copyright © Open CASCADE SAS, 2001. All rights reserved. + +Modifications to the Original Code have been made by ________________________. +Modifications are copyright © [Year to be included]. All rights reserved. + +The software Open CASCADE Technology and all software distributed under the +License are distributed on an "AS IS" basis, without warranty of any kind, +and the Initial Developer hereby disclaims all such warranties, including +without limitation, any warranties of merchantability, fitness for a particular +purpose or non-infringement. + +Please see the License for the specific terms and conditions governing rights +and limitations under the License" + +End of Schedule "B" diff --git a/README.md b/README.md new file mode 100644 index 0000000..c3133e1 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# advent-of-code-2020 +