{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.PythonFreeCourse/lms","documentNamespace":"https://spdx.org/spdxdocs/protobom/8fdeecec-5617-4a9a-a877-555d0d6f4101","creationInfo":{"creators":["Tool: protobom-v0.0.0-20260130170711-0b8e67cacb3b+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2026-02-13T01:11:14Z"},"packages":[{"name":"eslint","SPDXID":"SPDXRef-npm-eslint-7.10.0-f5da9f","versionInfo":"^7.10.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/eslint@%5E7.10.0"}]},{"name":"eslint-config-airbnb-base","SPDXID":"SPDXRef-npm-eslint-config-airbnb-base-14.2.0-202eba","versionInfo":"^14.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/eslint-config-airbnb-base@%5E14.2.0"}]},{"name":"eslint-plugin-import","SPDXID":"SPDXRef-npm-eslint-plugin-import-2.22.1-bec511","versionInfo":"^2.22.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/eslint-plugin-import@%5E2.22.1"}]},{"name":"stylelint","SPDXID":"SPDXRef-npm-stylelint-13.7.2-4b8a13","versionInfo":"^13.7.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/stylelint@%5E13.7.2"}]},{"name":"stylelint-config-standard","SPDXID":"SPDXRef-npm-stylelint-config-standard-20.0.0-919d33","versionInfo":"^20.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/stylelint-config-standard@%5E20.0.0"}]},{"name":"actions/checkout","SPDXID":"SPDXRef-githubactions-actions-checkout-2-75c946","versionInfo":"2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/checkout@2"}]},{"name":"github/codeql-action/analyze","SPDXID":"SPDXRef-githubactions-githubcodeql-action-analyze-1-75c946","versionInfo":"1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/github/codeql-action/analyze@1"}]},{"name":"github/codeql-action/autobuild","SPDXID":"SPDXRef-githubactions-githubcodeql-action-autobuild-1-75c946","versionInfo":"1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/github/codeql-action/autobuild@1"}]},{"name":"github/codeql-action/init","SPDXID":"SPDXRef-githubactions-githubcodeql-action-init-1-75c946","versionInfo":"1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/github/codeql-action/init@1"}]},{"name":"codecov/codecov-action","SPDXID":"SPDXRef-githubactions-codecov-codecov-action-1.0.13-75c946","versionInfo":"1.0.13","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/codecov/codecov-action@1.0.13"}]},{"name":"actions/checkout","SPDXID":"SPDXRef-githubactions-actions-checkout-2..-75c946","versionInfo":"2.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/checkout@2.%2A.%2A"}]},{"name":"actions/setup-python","SPDXID":"SPDXRef-githubactions-actions-setup-python-1..-75c946","versionInfo":"1.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/setup-python@1.%2A.%2A"}]},{"name":"pytest-cov","SPDXID":"SPDXRef-pypi-pytest-cov-4.1.0-75c946","versionInfo":"4.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2010 Meme Dough","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pytest-cov@4.1.0"}]},{"name":"ipdb","SPDXID":"SPDXRef-pypi-ipdb-0.13.13-75c946","versionInfo":"0.13.13","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2007-2016 Godefroid Chapelle, Copyright (c) 2007-2019 ipdb development team, Copyright (c) 2011-2016 Godefroid Chapelle, Copyright (c) 2012-2016 Marc Abramowitz","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/ipdb@0.13.13"}]},{"name":"pytest-env","SPDXID":"SPDXRef-pypi-pytest-env-1.1.3-75c946","versionInfo":"1.1.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2010-202x The pytest-env","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pytest-env@1.1.3"}]},{"name":"debugpy","SPDXID":"SPDXRef-pypi-debugpy-1.8.1-75c946","versionInfo":"1.8.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 1995-2001 Corporation for National Research Initiatives, Copyright (c) 1999-2002 by Fredrik Lundh, Copyright (c) 1999-2002 by Secret Labs AB, Copyright (c) 2001-2007, Fernando Perez. \u003cfernando.perez@colorado.edu\u003e, Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Python Software Foundation, Copyright (c) 2001, Janko Hauser \u003cjhauser@zscout.de\u003e, Copyright (c) 2001, Nathaniel Gray \u003cn8gray@caltech.edu\u003e, Copyright (c) 2006-2010 Python Software Foundation, Copyright (c) 2008-2010, IPython Development Team, Copyright (c) 2008-2011 The IPython Development Team, Copyright (c) 2009-2012 Pierre Raybaut, Copyright (c) 2009-2014, Mario Vilas, Copyright (c) 2010-2014 Benjamin Peterson, Copyright (c) 2010-2018 Benjamin Peterson, Copyright (c) 2011 The IPython Development Team, Copyright (c) 2012, Ben Hoyt, Copyright (c) 2012, the IPython Development Team, Copyright (c) 2013 The IPython Development Team, Copyright (c) 2016 Red Hat, Copyright (c) Brainwy software Ltda, Copyright (c) Microsoft Corporation, Copyright (c) Yuli Fitterman, copyright Brainwy software Ltda, copyright Brainwy Software Ltda, Copyright Brainwy Software Ltda, copyright Microsoft Corporation","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/debugpy@1.8.1"}]},{"name":"docker-pycreds","SPDXID":"SPDXRef-pypi-docker-pycreds-0.4.0-75c946","versionInfo":"0.4.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/docker-pycreds@0.4.0"}]},{"name":"webencodings","SPDXID":"SPDXRef-pypi-webencodings-0.5.1-75c946","versionInfo":"0.5.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"Copyright 2012 by Simon Sapin","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/webencodings@0.5.1"}]},{"name":"numpy","SPDXID":"SPDXRef-pypi-numpy-1.26.4-75c946","versionInfo":"1.26.4","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"(c) Convert Chebyshev, (c) Jussi Pakkanen, (c) Multiply a Chebyshev, (c) Multiply a Hermite, (c) Multiply a Laguerre, (c) Multiply a Legendre, (c), False, False, False, True, (c), False, False, True, False, (c), True, True, False, False, Copyright (c) 1992-2013 The University of Tennessee and The University of Tennessee Research Foundation, Copyright (c) 1993 by Sun Microsystems, Inc., Copyright (c) 1995, 1996, 1997 Jim Hugunin, hugunin@mit.edu, Copyright (c) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura, Copyright (c) 2000-2013 The University of California Berkeley, Copyright (c) 2002-2017 Free Software Foundation, Inc., Copyright (c) 2003-2005, Jean-Sebastien Roy (js@jeannot.org), Copyright (c) 2004-2018 Max-Planck-Society author Martin Reinecke, Copyright (c) 2004, 2006 The Linux Foundation and its contributors, Copyright (c) 2005-2015, NumPy Developers, Copyright (c) 2005-2017, NumPy Developers, Copyright (c) 2005-2018 NVIDIA Corporation Built, Copyright (c) 2005-2021, NumPy Developers, Copyright (c) 2005-2023, NumPy Developers, Copyright (c) 2006-2013 The University of Colorado Denver, Copyright (c) 2006, University of Georgia and Pierre G.F. Gerard-Marchant, Copyright (c) 2007 Cybozu Labs, Inc., Copyright (c) 2007 Free Software Foundation, Inc. \u003chttp://fsf.org/\u003e, Copyright (c) 2007, 2011 David Schultz \u003cdas@FreeBSD.ORG\u003e, Copyright (c) 2008 Ian Bicking and Contributors, Copyright (c) 2009 Free Software Foundation, Inc. \u003chttp://fsf.org/\u003e, Copyright (c) 2009-2017 The MathJax Consortium, Copyright (c) 2009-2019 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors, Copyright (c) 2010 - 2019, Copyright (c) 2010 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia, Copyright (c) 2010 The Android Open Source Project, Copyright (c) 2010-2011 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia, Copyright (c) 2010-2017 The MathJax Consortium, Copyright (c) 2010-2019 Free Software Foundation, Inc., Copyright (c) 2011 by Enthought, Inc., Copyright (c) 2011 by Mark Wiebe (mwwiebe@gmail.com) The University of British Columbia, Copyright (c) 2011 Enthought, Inc, Copyright (c) 2011-2014, The OpenBLAS Project, Copyright (c) 2011-2015 The MathJax Consortium, Copyright (c) 2011-2017 The MathJax Consortium, Copyright (c) 2012 Google Inc., Copyright (c) 2012 Stephen Montgomery-Smith \u003cstephen@FreeBSD.ORG\u003e, Copyright (c) 2013 Gabriele Svelto \u003cgabriele.svelto@gmail.com\u003e, Copyright (c) 2013 THE PACKAGE'S, Copyright (c) 2013-2017 The MathJax Consortium, Copyright (c) 2014 Mathjax Consortium, Copyright (c) 2014 Ryan Juckett, Copyright (c) 2014-2017 The MathJax Consortium, Copyright (c) 2015 Melissa E. O'Neill, Copyright (c) 2015 Pauli Virtanen, Copyright (c) 2015-2017 Martin Hensel, Copyright (c) 2015-2017 The MathJax Consortium, Copyright (c) 2015-2021 Matthias Klumpp \u003cmatthias@tenstral.net\u003e, Copyright (c) 2016 - 2019 Kim Walisch, \u003ckim.walisch@gmail.com\u003e, Copyright (c) 2016-2017 The MathJax Consortium, Copyright (c) 2017, Copyright (c) 2017 Arseny Maslennikov, Copyright (c) 2017 Dylan Baker, Copyright (c) 2017 Intel Corporation, Copyright (c) 2017-2018 Intel Corporation, Copyright (c) 2018 Intel Corporation, Copyright (c) 2018 Melissa E. O'Neill, Copyright (c) 2018, Meson, Copyright (c) 2019 Kevin Sheppard, Copyright (c) 2019 NumPy Developers, Copyright (c) 2019 Takao Fujiwara \u003ctakao.fujiwara1@gmail.com\u003e, Copyright (c) 2020 Intel Corporation, Copyright (c) 2020-2021 Intel Corporation, Copyright (c) 2020-2023 Intel Corporation, Copyright (c) 2021 2022, Scientific Python project, Copyright (c) 2021 Intel Corporation, Copyright (c) 2021 Intel Corporation project 'existing project, Copyright (c) 2021 Microsoft Corporation, Copyright (c) 2021 Serge Sans Paille SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli \u003craghuveer.devulapalli@intel.com\u003e Serge Sans Paille \u003cserge.guelton@telecom-bretagne.eu\u003e, Copyright (c) 2021 Serge Sans Paille SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli \u003craghuveer.devulapalli@intel.com\u003e Serge Sans Paille \u003cserge.guelton@telecom-bretagne.eu\u003e Liu Zhuan \u003czhuan.liu@intel.com\u003e, Copyright (c) 2021 The Meson Developers, Copyright (c) 2021-2022 Intel Corporation, Copyright (c) 2022 Intel Corporation, Copyright (c) 2022 Intel Corporation SPDX-License-Identifier BSD-3-Clause Authors Liu Zhuan \u003czhuan.liu@intel.com\u003e Tang Xi \u003cxi.tang@intel.com\u003e, Copyright (c) 2022 Intel Corporation SPDX-License-Identifier BSD-3-Clause Authors Raghuveer Devulapalli \u003craghuveer.devulapalli@intel.com\u003e, Copyright (c) 2022-2023 Intel Corporation, Copyright (c) 2022, Intel, Copyright (c) 2023 Intel Corporation, Copyright (c) 2023, NumPy Developers, Copyright (c) Donald Stufft and individual contributors, Copyright 1996-2023 Intel Corporation, Copyright 1999 2011 Pearu Peterson, Copyright 1999, 2000, 2001 Regents of the University of California, Copyright 2001-2005 Pearu Peterson, Copyright 2002 Pearu Peterson, Copyright 2007-2018 by the Sphinx team, copyright 2008-2022, NumPy Developers, Copyright 2010-2012, D. E. Shaw Research, Copyright 2011 by Enthought, Inc, Copyright 2011 present NumPy Developers, Copyright 2011 present NumPy Developers. https://numpy.org/doc/stable/f2py/index.html, Copyright 2012-2016 The Meson development team, Copyright 2012-2017 The Meson development team, Copyright 2012-2019 The Meson development team, Copyright 2012-2020 Meson development team, Copyright 2012-2020 The Meson development team, Copyright 2012-2021 The Meson development team, Copyright 2012-2022 The Meson development team, Copyright 2012-2023 The Meson development team, Copyright 2013 The Meson development team, Copyright 2013-2014 The Meson development team, Copyright 2013-2016 The Meson development team, Copyright 2013-2017 The Meson development team, Copyright 2013-2018 The Meson development team, Copyright 2013-2019 The Meson development team, Copyright 2013-2020 The Meson development team, Copyright 2013-2021 The Meson development team, Copyright 2013-2023 The Meson development team, Copyright 2014 Jussi Pakkanen, Copyright 2014 Melissa O'Neill \u003coneill@pcg-random.org\u003e, Copyright 2014-2016 The Meson development team, Copyright 2014-2017 The Meson development team, Copyright 2014-2019 The Meson development team, Copyright 2014-2021 The Meson development team, Copyright 2015 Robert Kern \u003crobert.kern@gmail.com\u003e, Copyright 2015 The Meson development team, Copyright 2015-2016 The Meson development team, Copyright 2015-2022 The Meson development team, Copyright 2016 The Meson development team, Copyright 2016-2017 The Meson development team, Copyright 2016-2018 The Meson development team, Copyright 2016-2021 Matthew Brett, Isuru Fernando, Matti Picus, Copyright 2016-2021 The Meson development team, Copyright 2016-2022 The Meson development team, Copyright 2017 Niklas Claesson, Copyright 2017 The Meson development team, copyright 2017-2018, NumPy Developers, Copyright 2017-2021 The Meson development team, Copyright 2017, 2019 The Meson development team, Copyright 2018 The Meson development team, Copyright 2019 Red Hat, Inc., Copyright 2019 The meson development team, Copyright 2019 The Meson development team, Copyright 2019-2022 The meson development team, Copyright 2020 Intel Corporation, Copyright 2020 The Meson development team, Copyright 2021 The Meson development team, Copyright 2021 The Meson development team from, Copyright 2021 The Meson development team SPDX-license-identifier, Copyright 2022 Intel Corporation, Copyright 2022 Mark Bolhuis \u003cmark@bolhuis.dev\u003e, Copyright 2022 The Meson development team, Copyright Absoft Corporation, Copyright Absoft Corporation 1994-1998 mV2 Cray Research, Inc. 1994-1996 CF90, Copyright Absoft Corporation 1994-2002 Absoft Pro FORTRAN","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/numpy@1.26.4"}]},{"name":"mypy-extensions","SPDXID":"SPDXRef-pypi-mypy-extensions-1.0.0-75c946","versionInfo":"1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2016-2017 Jukka Lehtosalo and contributors","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/mypy-extensions@1.0.0"}]},{"name":"amqp","SPDXID":"SPDXRef-pypi-amqp-5.2.0-75c946","versionInfo":"5.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"Copyright (c) 2007 Barry Pederson \u003cbp@barryp.org\u003e, Copyright (c) 2007-2008 Barry Pederson \u003cbp@barryp.org\u003e, Copyright (c) 2007-2018 Pivotal Software, Copyright (c) 2009 Barry Pederson \u003cbp@barryp.org\u003e, Copyright (c) 2009, 2010, 2011, 2012 Ask Solem, and individual contributors, Copyright (c) 2012-2014 GoPivotal, Inc., Copyright (c) 2015-2016 Ask Solem \u0026 contributors, copyright 2016', publisher Celery Project","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/amqp@5.2.0"}]},{"name":"itsdangerous","SPDXID":"SPDXRef-pypi-itsdangerous-2.1.2-75c946","versionInfo":"2.1.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"copyright 2011 Pallets, Copyright 2011 Pallets","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/itsdangerous@2.1.2"}]},{"name":"flake8-bandit","SPDXID":"SPDXRef-pypi-flake8-bandit-4.1.1-75c946","versionInfo":"4.1.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2017 Tyler Wince","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-bandit@4.1.1"}]},{"name":"pylint","SPDXID":"SPDXRef-pypi-pylint-3.0.3-75c946","versionInfo":"3.0.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"GPL-2.0-or-later","copyrightText":"Copyright (c) 1989, 1991 Free Software Foundation, Inc., Copyright (c) https://github.com/pylint-dev/pylint/blob/main/CONTRIBUTORS.txt, copyrighted by the Free Software Foundation","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pylint@3.0.3"}]},{"name":"flake8-bugbear","SPDXID":"SPDXRef-pypi-flake8-bugbear-24.2.6-75c946","versionInfo":"24.2.6","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2016 Lukasz Langa, Copyright (c) 2016-2021 Lukasz Langa","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-bugbear@24.2.6"}]},{"name":"junitparser","SPDXID":"SPDXRef-pypi-junitparser-3.1.2-75c946","versionInfo":"3.1.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright 2020 Joel Wang","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/junitparser@3.1.2"}]},{"name":"jedi","SPDXID":"SPDXRef-pypi-jedi-0.19.1-75c946","versionInfo":"0.19.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) \u003c2013\u003e Permission, Copyright (c) 2015 Jukka Lehtosalo and contributors, Copyright (c) Maxim Kurnikov","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jedi@0.19.1"}]},{"name":"flask-httpauth","SPDXID":"SPDXRef-pypi-flask-httpauth-4.8.0-75c946","versionInfo":"4.8.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc. Underscore, (c) JS Foundation and other contributors, Copyright (c) 2010 by Armin Ronacher, Copyright (c) 2013 Miguel Grinberg, copyright (c) 2014 by Miguel Grinberg, Copyright 2007-2010 by the Sphinx team, Copyright 2007-2020 by the Sphinx team, Copyright 2010 by Armin Ronacher. :license Flask Design, copyright 2013, Miguel Grinberg, Copyright JS Foundation and other contributors, copyright u'2013, Miguel Grinberg","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-httpauth@4.8.0"}]},{"name":"lxml","SPDXID":"SPDXRef-pypi-lxml-5.1.0-75c946","versionInfo":"5.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"(c) Copyright 2020, lxml dev team, (c) ET. Where, (c) OpenJS Foundation and other contributors, (c) self.assertEqual http://ns1, Copyright (c) 1989, 1991 Free Software Foundation, Inc., Copyright (c) 1999-2003 by Fredrik Lundh, Copyright (c) 1999-2003 by Secret Labs AB, Copyright (c) 1999-2004 by Fredrik Lundh, Copyright (c) 1999-2009 by Fredrik Lundh, Copyright (c) 2000-2008 Rick Jelliffe, Copyright (c) 2000,2001 Rick Jelliffe, Copyright (c) 2001, 2006 Rick Jelliffe, Copyright (c) 2003 Shuttleworth Foundation, Copyright (c) 2003-2004 by Fredrik Lundh, Copyright (c) 2003-2009 by Fredrik Lundh, Copyright (c) 2004 Ian Bicking, Copyright (c) 2004 Infrae, Copyright (c) 2004-2010 Rick Jellife, Copyright (c) 2008 Rick Jelliffe, Copyright (c) ISO/IEC 2015, Copyright 2006-2009 by the Pygments team, Copyright 2007-2023 by the Sphinx team, copyright 2020, lxml dev team, copyright Ian Bicking, copyright International Organization, copyright Rick Jelliffe, copyright Shuttleworth Foundation, Copyright Sphinx contributors, copyrighted by the Free Software Foundation","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/lxml@5.1.0"}]},{"name":"wrapt","SPDXID":"SPDXRef-pypi-wrapt-1.16.0-75c946","versionInfo":"1.16.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"Copyright (c) 2013-2023, Graham Dumpleton","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/wrapt@1.16.0"}]},{"name":"flake8-tidy-imports","SPDXID":"SPDXRef-pypi-flake8-tidy-imports-4.10.0-75c946","versionInfo":"4.10.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-tidy-imports@4.10.0"}]},{"name":"flake8-alfred","SPDXID":"SPDXRef-pypi-flake8-alfred-1.1.1-75c946","versionInfo":"1.1.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-alfred@1.1.1"}]},{"name":"python-dotenv","SPDXID":"SPDXRef-pypi-python-dotenv-1.0.1-75c946","versionInfo":"1.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2014, Saurabh Kumar","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dotenv@1.0.1"}]},{"name":"flake8-polyfill","SPDXID":"SPDXRef-pypi-flake8-polyfill-1.0.2-75c946","versionInfo":"1.0.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2016 Ian Cordasco \u003cgraffatcolmingov@gmail.com\u003e","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-polyfill@1.0.2"}]},{"name":"flask-mail","SPDXID":"SPDXRef-pypi-flask-mail-0.9.1-75c946","versionInfo":"0.9.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2010 by Armin Ronacher., copyright (c) 2010 by Dan Jacob., Copyright (c) 2010 by danjac., Copyright 2007-2010 by the Sphinx team, Copyright 2010 by Armin Ronacher. :license Flask Design License, copyright u'2010, Dan Jacob","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-mail@0.9.1"}]},{"name":"flake8-quotes","SPDXID":"SPDXRef-pypi-flake8-quotes-3.4.0-75c946","versionInfo":"3.4.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-quotes@3.4.0"}]},{"name":"flask-babel","SPDXID":"SPDXRef-pypi-flask-babel-4.0.0-75c946","versionInfo":"4.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2010 by Armin Ronacher, copyright (c) 2013 by Armin Ronacher, Daniel Neuhauser","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-babel@4.0.0"}]},{"name":"bench-it","SPDXID":"SPDXRef-pypi-bench-it-1.0.1-75c946","versionInfo":"1.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright (c) 2009-2013, Luke Maurits \u003cluke@maurits.id.au\u003e, Copyright 2016-2018 Stephen Mitchell","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/bench-it@1.0.1"}]},{"name":"flake8","SPDXID":"SPDXRef-pypi-flake8-7.0.0-75c946","versionInfo":"7.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2011-2013 Tarek Ziade \u003ctarek@ziade.org\u003e, Copyright (c) 2012-2016 Ian Cordasco \u003cgraffatcolmingov@gmail.com\u003e","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8@7.0.0"}]},{"name":"pycparser","SPDXID":"SPDXRef-pypi-pycparser-2.21-75c946","versionInfo":"2.21","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2001-2017 David M. Beazley (Dabeaz LLC), Copyright (c) 2008-2020, Eli Bendersky, David Beazley (http://www.dabeaz.com) Copyright (c) 2017","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pycparser@2.21"}]},{"name":"mccabe","SPDXID":"SPDXRef-pypi-mccabe-0.7.0-75c946","versionInfo":"0.7.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2011-2013 Tarek Ziade \u003ctarek@ziade.org\u003e, Copyright (c) 2013 Florent Xicluna \u003cflorent.xicluna@gmail.com\u003e, Copyright (c) Ned Batchelder","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/mccabe@0.7.0"}]},{"name":"defusedxml","SPDXID":"SPDXRef-pypi-defusedxml-0.7.1-75c946","versionInfo":"0.7.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"PSF-2.0","copyrightText":"Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Python Software Foundation, Copyright (c) 2013 by Christian Heimes \u003cchristian@python.org\u003e, Copyright (c) 2013-2017 by Christian Heimes, Copyright (c) 2013-2017 by Christian Heimes \u003cchristian@python.org\u003e","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/defusedxml@0.7.1"}]},{"name":"werkzeug","SPDXID":"SPDXRef-pypi-werkzeug-3.0.1-75c946","versionInfo":"3.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"copyright 2007 Pallets, Copyright 2007 Pallets","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/werkzeug@3.0.1"}]},{"name":"flake8-commas","SPDXID":"SPDXRef-pypi-flake8-commas-2.1.0-75c946","versionInfo":"2.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-commas@2.1.0"}]},{"name":"flake8-todo","SPDXID":"SPDXRef-pypi-flake8-todo-0.7-75c946","versionInfo":"0.7","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-todo@0.7"}]},{"name":"importlib-metadata","SPDXID":"SPDXRef-pypi-importlib-metadata-7.0.1-75c946","versionInfo":"7.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/importlib-metadata@7.0.1"}]},{"name":"pyflakes","SPDXID":"SPDXRef-pypi-pyflakes-3.2.0-75c946","versionInfo":"3.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright 2005-2011 Divmod, Inc., Copyright 2013 Florent Xicluna, Copyright 2013-2014 Florent Xicluna","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyflakes@3.2.0"}]},{"name":"jinja2","SPDXID":"SPDXRef-pypi-jinja2-3.1.3-75c946","versionInfo":"3.1.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"(c) Copyright 2008 by http://domain.invalid/'\u003e, copyright 2007 Pallets, Copyright 2007 Pallets","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jinja2@3.1.3"}]},{"name":"flask-login","SPDXID":"SPDXRef-pypi-flask-login-0.6.3-75c946","versionInfo":"0.6.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2010 by Armin Ronacher, copyright (c) 2011 by Matthew Frazier, Copyright (c) 2011 Matthew Frazier, Copyright 2007-2010 by the Sphinx team, Copyright 2010 by Armin Ronacher. :license Flask Design, copyright 2011, Matthew Frazier","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-login@0.6.3"}]},{"name":"flake8-blind-except","SPDXID":"SPDXRef-pypi-flake8-blind-except-0.2.1-75c946","versionInfo":"0.2.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2014 Elijah Andrews","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-blind-except@0.2.1"}]},{"name":"babel","SPDXID":"SPDXRef-pypi-babel-2.14.0-75c946","versionInfo":"2.14.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"copr Coptegr Crir, copr Kopteschr Tsch, copr Koptischr Creer, copr Koptschr Creer, copr Koptyskr Creer, Copyright (c) (year)d Foo Company, Copyright (c) 1990-2003 Foo Company, Copyright (c) 1990-2003 ORGANIZATION, Copyright (c) 2006 Ufsoft.org, Copyright (c) 2007 - 2011 by Edgewall Software, Copyright (c) 2007 FooBar, Inc., Copyright (c) 2007 ORGANIZATION, Copyright (c) 2007 THE PACKAGE'S, Copyright (c) 2007-2011 Edgewall Software, 2013-2023 the Babel team, Copyright (c) 2010 by Armin Ronacher, copyright (c) 2013-2023 by the Babel Team, Copyright (c) 2013-2023 by the Babel Team, copyright (c) 2015-2023 by the Babel Team, Copyright (c) time.strftime Y FooBar, Inc., Copyright 2010 by Armin Ronacher. :license Flask Design, Copyright 2013 by Lennart, copyright 2023, The Babel Team, copyright in Babel, Copyright of Edgewall Software, Foobar. Copyright (c), POT for my really cool PROJECT project. Copyright (c) 1990-2003 ORGANIZATION","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/babel@2.14.0"}]},{"name":"gunicorn","SPDXID":"SPDXRef-pypi-gunicorn-22.0.0-75c946","versionInfo":"22.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) Benoit Chesneau \u003cbenoitc@gunicorn.org\u003e 2009-2015, (c) Copyright 2009-2023, Benoit Chesneau, (c) Meebo, Inc., (c) Paul J. Davis \u003cpaul.joseph.davis@gmail.com\u003e, Copyright (c) 2005-2006, Bob Ippolito, Copyright (c) 2007-2010, Linden Research, Inc., Copyright (c) 2008-2010, Eventlet, Copyright 2001-2005 by Vinay Sajip, Copyright 2007-2023 by the Sphinx team, Copyright 2009 Paul J. Davis \u003cpaul.joseph.davis@gmail.com\u003e, copyright 2009- s, Benoit Chesneau, copyright 2009-2023, Benoit Chesneau, Copyright 2013 Dariusz Suchojad, Copyright Dave Gandy 2016","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/gunicorn@22.0.0"}]},{"name":"flask-limiter","SPDXID":"SPDXRef-pypi-flask-limiter-3.5.1-75c946","versionInfo":"3.5.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2023 Ali-Akber Saifee, Copyright 2023, Ali-Akber Saifee, copyright 2023, Ali-Akber Saifee project Flask-Limiter","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-limiter@3.5.1"}]},{"name":"requests","SPDXID":"SPDXRef-pypi-requests-2.31.0-75c946","versionInfo":"2.31.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"copyright (c) 2012 by Kenneth Reitz, copyright (c) 2017 by Kenneth Reitz, Copyright 2019 Kenneth Reitz, Copyright Kenneth Reitz","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests@2.31.0"}]},{"name":"sqlfluff","SPDXID":"SPDXRef-pypi-sqlfluff-2.3.5-75c946","versionInfo":"2.3.5","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2018 Alan Cruickshank","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sqlfluff@2.3.5"}]},{"name":"flake8-import-order","SPDXID":"SPDXRef-pypi-flake8-import-order-0.18.2-75c946","versionInfo":"0.18.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"GPL-3.0-or-later AND LGPL-3.0 AND LGPL-3.0-only AND MIT","copyrightText":"Copyright (c) 2007 Free Software Foundation, Inc. \u003chttp://fsf.org/\u003e, Copyright 2013-2016 s","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-import-order@0.18.2"}]},{"name":"mypy","SPDXID":"SPDXRef-pypi-mypy-1.8.0-75c946","versionInfo":"1.8.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) D TypeAlias, (c) E Argument, (c) E Cannot, (c) E Incompatible, (c) E Only, (c) E Too, (c) N Revealed, Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands, Copyright (c) 1995-2001 Corporation for National Research Initiatives, Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Python Software Foundation, Copyright (c) 2012-2023 Jukka Lehtosalo and contributors, Copyright (c) 2015 Jukka Lehtosalo and contributors, Copyright (c) 2015-2023 Dropbox, Inc., Copyright (c) 2016 The Pybind Development Team, Copyright 2003 Google Inc., Copyright 2005, Google Inc., Copyright 2006, Google Inc., Copyright 2007, Google Inc., Copyright 2008 Google Inc., Copyright 2008, Google Inc., Copyright 2009 Google Inc., copyright 2012-2022 Jukka Lehtosalo and mypy contributors, Copyright 2015, Google Inc., copyright 2020-2022, mypyc team, Copyright Contributors to the pythoncapi_compat project.","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/mypy@1.8.0"}]},{"name":"pygments","SPDXID":"SPDXRef-pypi-pygments-2.17.2-75c946","versionInfo":"2.17.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"(c) 2000-2003 by cYcnus visit www.cYcnus.de, (c) 2006-2023 by Georg Brandl, Matthaus Chajdas and contributors, (c) 2010 Jeremy Ashkenas, DocumentCloud Inc., (c) 2010 Jeremy Ashkenas, DocumentCloud Inc. Underscore, (c) 2014, (c) 2014 Comment.Multiline Text.Whitespace, (c) 2015 Andreas Rossberg, (c) Copyright 1999, Artran, Inc., (c) Copyright 2006 by http://mydomain.tld'\u003e, (c) Copyright 2006 by myself, (c) Copyright 2006 Salvatore Filippone University of Rome Tor Vergata, (c) Copyright 2006 Salvatore Filippone University of Rome Tor Vergata Alfredo Buttari University of Rome Tor Vergata, (c) Copyright 2006 Salvatore Filippone University of Rome Tor Vergata Comment, (c) Copyright 2006-2023, Georg Brandl and Pygments contributors, (c) FSF., (c) Justin Fletcher, (c) Justin Fletcher, 1998, (c) Justin Fletcher, 1998 40, (c) Name.Entity 1998-2009, Modelica Association, (c) Name.Entity Copyright 2006 by Text Punctuation, (c) openEHR Foundation, (c) opyright 2003, MetaQuotes Software Corp., (c) V End, Copyright (c) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik, Copyright (c) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik. Unlimited, Copyright (c) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc., Copyright (c) 1985-1986, 1992, 1994-1995, 1999-2015 Free Software, Copyright (c) 1985-1986, 1992, 1994-1995, 1999-2015 Free Software Comment.Single, Copyright (c) 1985-1986, 1992, 1994-1995, 1999-2015 Free Software Foundation, Inc., Copyright (c) 1991, 1992, Jos van de Woude, jvdwoude@hut.nl, Copyright (c) 1991, Jos van der Woude, jvdwoude@hut.nl, Copyright (c) 1991, Jos van der Woude, jvdwoude@hut.nl Comment, Copyright (c) 1993-2003 Yukihiro Matsumoto, Copyright (c) 1994-5 by the Regents of the University of California, Copyright (c) 1995-2004 Functional Objects, Inc., Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc., Copyright (c) 1996-2016 by the PostgreSQL Global Development Group, Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 Comment.Single, Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc., Copyright (c) 1997 Borland International, Copyright (c) 1998 Comment, Copyright (c) 1998 the Initial Developer, Copyright (c) 1998-2009, Modelica Association, Copyright (c) 1998,1999,2000,2001,2002 Tal Davidson, Copyright (c) 2000 Information-technology Promotion Agency, Japan, Copyright (c) 2000 Network Applied Communication Laboratory, Inc., Copyright (c) 2003, Copyright (c) 2003, 04 by Johannes Barre, Copyright (c) 2003, MetaQuotes Software Corp., copyright (c) 2004 by Andre Simon, Copyright (c) 2004, 2005, 2006 Aelitis, Copyright (c) 2005 Free Software Foundation, Inc, Copyright (c) 2005 Free Software Foundation, Inc., Copyright (c) 2005-2006, Copyright (c) 2005-2006 by, Copyright (c) 2005-2007 Terence Parr, Copyright (c) 2006 Kashia Buch (kashia@vfemail.net), Fabian Buch (fabian@fabian-buch.de), Copyright (c) 2006-2022 by the, Copyright (c) 2006, Manni, Copyright (c) 2007-2008 - INRIA, Copyright (c) 2008 Silken, Copyright (c) 2008 Slava Pestov, Copyright (c) 2008 Slava Pestov Comment, Copyright (c) 2008 The Regents of the University of California, Copyright (c) 2008-2011 The Regents of the University of California, Copyright (c) 2008, Brian Frank and Andy Frank, Copyright (c) 2009 Benjamin Kowarsch, Copyright (c) 2009 The R Foundation for Statistical Computing, Copyright (c) 2009 The R Foundation for Statistical Computing ISBN, Copyright (c) 2009-2010, Gary L., Copyright (c) 2009-2010, Gary L. Cutler, Copyright (c) 2009-2010, Gary L. Cutler GC0410, Copyright (c) 2009-2010, Gary L. Cutler, GPL, Copyright (c) 2009-2010, Gary L. Cutler, GPL Comment, Copyright (c) 2009-2010, Gary L. Cutler, GPL Literal.String.Double . Punctuation, Copyright (c) 2010, Gary L. Cutler, Copyright (c) 2010, Gary L. Cutler, GPL, Copyright (c) 2010, Gary L. Cutler, GPL Comment, Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies), Copyright (c) 2012-2013 Nenad Rakocevic, Copyright (c) 2014 Fullstack.io, Copyright (c) 2015 DH electronics GmbH, Copyright (C) 2015 DH electronics GmbH, Copyright (c) 2015 Georg Brandl, Copyright (c) 2017 Johannes Holzl, Copyright (c) 2018 Marek Vasut \u003cmarex@denx.de\u003e, Copyright (c) Curve.Fi, 2020-2023, Copyright (c) INRIA - Serge, Copyright (c) Rich Hickey, Copyright 1996 Institut National de Recherche en Informatique, Copyright 1996 Institut National de Recherche en Informatique et Comment Comment, Copyright 1996 Institut National de Recherche en Informatique et en Automatique, Copyright 1997 University of Cambridge, Copyright 1997 University of Cambridge Comment, Copyright 1999-2011, Copyright 1999-2011 ( VV/ ), Copyright 1999-2011 Comment, Copyright 1999-2011 Comment Comment, Copyright 2004-2008 Jean Privat \u003cjean@pryen.org\u003e, Copyright 2005 Brian Alliet, Copyright 2005 Brian Alliet Comment, Copyright 2006-'+date, copyright 2006-2014, MetaQuotes Software Corp, copyright 2006-2014, MetaQuotes Software Corp., Copyright 2006-2014, MetaQuotes Software Corp., Copyright 2006-2014, MetaQuotes Software Corp. http://www.metaquotes.net, copyright 2006-2014, MetaQuotes Software Corp. property link http://www.mql4.com, Copyright 2006-2020 by the Pygments team, Copyright 2006-2022 by the Pygments team, Copyright 2006-2023 by r'the Pygments team, Copyright 2006-2023 by the Pygments team, copyright 2006-2023, Georg Brandl and Pygments contributors, copyright 2006. Text, copyright 2006. Uploaded, Copyright 2007-2012 LassoSoft Inc., Copyright 2007-2013 by the Sphinx team, Copyright 2007-2021 by the Sphinx team, Copyright 2008, 280 North, Inc., Copyright 2009-2013, MetaQuotes Software Corp., Copyright 2009-2013, MetaQuotes Software Corp. http://www.mql4.com, Copyright 2012 by Luis Majano and Ortus Solutions, Corp www.gocontentbox.org www.luismajano.com www.ortussolutions.com, Copyright 2012 Nokia Siemens Networks Oyj, Copyright 2012-2013 Alexis Laferriere \u003calexis.laf@xymus.net\u003e, Copyright 2012-2018 Manas Technology Solutions, Copyright 2013 Alexis Laferriere \u003calexis.laf@xymus.net\u003e, Copyright 2013 Matthieu Lucas \u003clucasmatthieu@gmail.com\u003e, Copyright 2013 Wikimedia, Copyright 2014 Alexis Laferriere \u003calexis.laf@xymus.net\u003e, Copyright 2014 Lucas Bajolet \u003cr4pass@hotmail.com\u003e, Copyright 2015 Ruben De Smet, Copyright 2020 Microsoft Research, Copyright 2021 by the Pygments team, Copyright content Knut Muller, Alexander Wolf, Uwe Ritzschke, Paul-Robert Achcenich, 2006, copyright Core CorrespondenceScrolls, Francisco Tolmasky. Copyright 2008, Leaf Corcoran (leafot@gmail.com) 2011, Murphy (c) 2000-2003, Murphy (c) 2000-2003 by cYcnus visit www.cYcnus.de licenser@cYcnus.de, Platform Copyright 2012 by Luis Majano and Ortus Solutions, Corp www.gocontentbox.org www.luismajano.com www.ortussolutions.com, Platform Copyright 2012 by Luis Majano and Ortus Solutions, Corp www.gocontentbox.org www.luismajano.com www.ortussolutions.com Apache, Portions (c) International Organization, Portions (c) International Organization for Standardization 1986, Portions created by the Initial Developer are Copyright (c) 1998 the Initial Developer","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pygments@2.17.2"}]},{"name":"flask","SPDXID":"SPDXRef-pypi-flask-3.0.2-75c946","versionInfo":"3.0.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"(c) Copyright 2010 by http://domain.invalid/'\u003e, Copyright (c) 2015 CERN., copyright 2010 Pallets, Copyright 2010 Pallets","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask@3.0.2"}]},{"name":"email-validator","SPDXID":"SPDXRef-pypi-email-validator-2.1.0.post1-75c946","versionInfo":"2.1.0.post1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"CC0-1.0","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/email-validator@2.1.0.post1"}]},{"name":"flask-wtf","SPDXID":"SPDXRef-pypi-flask-wtf-1.2.1-75c946","versionInfo":"1.2.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"copyright 2010 WTForms, Copyright 2010 WTForms","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-wtf@1.2.1"}]},{"name":"bandit","SPDXID":"SPDXRef-pypi-bandit-1.7.7-75c946","versionInfo":"1.7.7","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright (c) 2013 Hewlett-Packard Development Company, L.P., Copyright (c) 2015 Hewlett Packard Enterprise, Copyright (c) 2015 Rackspace, Inc., Copyright (c) 2015 VMware, Inc., Copyright (c) 2016 Hewlett-Packard Development Company, L.P., Copyright (c) 2016 Rackspace, Inc., Copyright (c) 2017 Hewlett Packard Enterprise, Copyright (c) 2017 VMware, Inc., Copyright (C) 2018 [Victor Torre](https://github.com/ehooo), Copyright (c) 2018 SolarWinds, Inc., Copyright (c) 2018 Victor Torre (https://github.com/ehooo), Copyright (c) 2018 VMware, Inc., Copyright (c) 2022 Rajesh Pangare, Copyright 2014 Hewlett-Packard Development Company, L.P., Copyright 2015 Hewlett-Packard Development Company, L.P., Copyright 2015 Hewlett-Packard Enterprise, Copyright 2015 IBM Corp., Copyright 2015 Nebula, Inc., Copyright 2015 Red Hat Inc., Copyright 2015 Red Hat, Inc., Copyright 2016 Hewlett-Packard Development Company, L.P., Copyright 2016 Hewlett-Packard Enterprise, Copyright 2016 IBM Corp., Copyright 2018 Victor Torre, Copyright 2019 Victor Torre, copyright 2023, Bandit Developers","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/bandit@1.7.7"}]},{"name":"arrow","SPDXID":"SPDXRef-pypi-arrow-1.3.0-75c946","versionInfo":"1.3.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright 2023 Chris Smith, copyright 2023, Chris Smith","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/arrow@1.3.0"}]},{"name":"flask-admin","SPDXID":"SPDXRef-pypi-flask-admin-1.6.1-75c946","versionInfo":"1.6.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"(c) 2010-2011 CloudMade, (c) 2010-2018 Vladimir Agafonkin, (c) 2012-2017, Jacob Toye, Jon West, Smartrak, Leaflet, (c) JS Foundation and other contributors, Copyright (c) 2012-2015 Dan Grossman, Copyright (c) 2012-2015, Serge S. Koval, copyright (c) 2013 by Armin Ronacher, Copyright (c) 2013 Vitaliy Potapov, Copyright (c) 2014, Serge S. Koval and contributors, Copyright (c) 2016 Federico Zivolo and contributors, Copyright (c) 2017 ORGANIZATION, Copyright (c) 2018 Vitaliy Potapov, Copyright (c) Federico Zivolo 2018, Copyright 2011-2015 Twitter, Inc., Copyright 2011-2018 The Bootstrap Authors, Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors), Copyright 2011-2018 Twitter, Inc., Copyright 2011-2019 The Bootstrap Authors, Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors), Copyright 2011-2019 Twitter, Inc., Copyright 2012 Stefan Petre, Copyright 2012 Twitter, Inc, Copyright 2012-2014 Dan Grossman, Copyright 2012-2015 Thomas Park, Copyright 2012-2019 Thomas Park, Copyright 2013 Twitter, Inc., Copyright 2013 Twitter, Inc. http://www.apache.org/licenses/LICENSE-2.0.txt, Copyright 2013-2015 Dan Grossman http://www.dangrossman.info, Copyright 2014 Igor Vaynberg, copyright 2014 Waybury. https://useiconic.com/open, Copyright Dave Gandy 2016","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-admin@1.6.1"}]},{"name":"coverage","SPDXID":"SPDXRef-pypi-coverage-7.4.2-75c946","versionInfo":"7.4.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright 2001 Gareth Rees, Copyright 2004- facts.now Y Ned, Copyright 2004-2024 Ned Batchelder, Copyright 2004. Ned', f, copyright 2009 N, copyright 2009-2024, Ned Batchelder, Copyright Software Freedom Conservancy, Inc., Portions (c) International Organization","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/coverage@7.4.2"}]},{"name":"flake8-comprehensions","SPDXID":"SPDXRef-pypi-flake8-comprehensions-3.14.0-75c946","versionInfo":"3.14.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2017 Adam Johnson","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-comprehensions@3.14.0"}]},{"name":"pycodestyle","SPDXID":"SPDXRef-pypi-pycodestyle-2.11.1-75c946","versionInfo":"2.11.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2006-2009 Johann C. Rocholl \u003cjohann@rocholl.net\u003e, Copyright (c) 2009-2014 Florent Xicluna \u003cflorent.xicluna@gmail.com\u003e, Copyright (c) 2014-2016 Ian Lee \u003cianlee1521@gmail.com\u003e, Copyright (c) 2014-2020 Ian Lee \u003cIanLee1521@gmail.com\u003e","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pycodestyle@2.11.1"}]},{"name":"flake8-print","SPDXID":"SPDXRef-pypi-flake8-print-5.0.0-75c946","versionInfo":"5.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2016 Joseph Kahn","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-print@5.0.0"}]},{"name":"flake8-broken-line","SPDXID":"SPDXRef-pypi-flake8-broken-line-1.0.0-75c946","versionInfo":"1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2018 Nikita Sobolev","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-broken-line@1.0.0"}]},{"name":"jinja2-pluralize","SPDXID":"SPDXRef-pypi-jinja2-pluralize-0.3.0-75c946","versionInfo":"0.3.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jinja2-pluralize@0.3.0"}]},{"name":"celery","SPDXID":"SPDXRef-pypi-celery-5.3.6-75c946","versionInfo":"5.3.6","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2007 Michael Twomey, copyright (c) 2009 - 2012 Ask Solem and individual contributors, Copyright (c) 2009, 2010, 2011, 2012 Ask Solem, and individual contributors, copyright (c) 2012-2014 GoPivotal, Inc., Copyright (c) 2012-2014 GoPivotal, Inc., copyright (c) 2015-2016 Ask Solem, Copyright (c) 2015-2016 Ask Solem \u0026 contributors, copyright (c) 2017-2026 Asif Saif Uddin, celery core and individual contributors, Copyright (c) 2017-2026 Asif Saif Uddin, core team \u0026 contributors, copyright 2009-2023', publisher Celery Project, Copyright by Werkzeug Team, Copyright copy 2009-2016, Ask Solem","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/celery@5.3.6"}]},{"name":"loguru","SPDXID":"SPDXRef-pypi-loguru-0.7.2-75c946","versionInfo":"0.7.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2017 Permission, Cyan (c) Normal","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/loguru@0.7.2"}]},{"name":"certifi","SPDXID":"SPDXRef-pypi-certifi-2024.2.2-75c946","versionInfo":"2024.2.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MPL-2.0","copyrightText":"(c) 1999 Entrust.net Limited, (c) 1999 Entrust.net Limited Label Entrust.net Premium 2048 Secure Server CA Serial, (c) 2006 Entrust, Inc., (c) 2006 Entrust, Inc. Label Entrust Root Certification, (c) 2009 Entrust, Inc. - for, (c) 2012 Entrust, Inc. - for, (c) 2015 Entrust, Inc. - for","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/certifi@2024.2.2"}]},{"name":"peewee","SPDXID":"SPDXRef-pypi-peewee-3.17.1-75c946","versionInfo":"3.17.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) 2005, 2014 jQuery Foundation, Inc., Blog, (c) 2015, Copyright (c) 2004-2015 Gerhard Haring \u003cgh@ghaering.de\u003e, Copyright (c) 2010 Charles Leifer, Copyright 2007-2023 by the Sphinx team, Copyright 2010 by Armin Ronacher. :license Flask Design, Copyright 2011-2014 Twitter, Inc.","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/peewee@3.17.1"}]},{"name":"pytest","SPDXID":"SPDXRef-pypi-pytest-8.0.1-75c946","versionInfo":"8.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2004 Holger Krekel and others, Copyright (c) 2014, Gregory Boissinot, copyright 2015, holger krekel and pytest-dev team, Copyright Holger Krekel and others, 2004","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pytest@8.0.1"}]},{"name":"wtf-peewee","SPDXID":"SPDXRef-pypi-wtf-peewee-3.0.5-75c946","versionInfo":"3.0.5","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2010 Charles Leifer, Copyright 2010, John Resig, Copyright 2010, The Dojo Foundation, Copyright 2011 Twitter, Inc.","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/wtf-peewee@3.0.5"}]},{"name":"flake8-eradicate","SPDXID":"SPDXRef-pypi-flake8-eradicate-1.5.0-75c946","versionInfo":"1.5.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2018 Nikita Sobolev","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-eradicate@1.5.0"}]},{"name":"flake8-mutable","SPDXID":"SPDXRef-pypi-flake8-mutable-1.2.0-75c946","versionInfo":"1.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2016 Matthew Ebeweber","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-mutable@1.2.0"}]},{"name":"flake8-builtins","SPDXID":"SPDXRef-pypi-flake8-builtins-2.2.0-75c946","versionInfo":"2.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"GPL-2.0-only AND GPL-3.0-or-later","copyrightText":"Copyright (c) 1989, 1991 Free Software Foundation, Inc., copyrighted by the Free Software Foundation","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-builtins@2.2.0"}]},{"name":"pyodbc","SPDXID":"SPDXRef-pypi-pyodbc-5.1.0-75c946","versionInfo":"5.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyodbc@5.1.0"}]},{"name":"wtforms","SPDXID":"SPDXRef-pypi-wtforms-3.1.2-75c946","versionInfo":"3.1.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2020 WTForms Team, Copyright (c) 2023 WTForms Team, copyright 2008 WTForms, Copyright 2008 WTForms","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/wtforms@3.1.2"}]},{"name":"python-dateutil","SPDXID":"SPDXRef-pypi-python-dateutil-2.8.2-75c946","versionInfo":"2.8.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright (c) 2003-2011 - Gustavo Niemeyer \u003cgustavo@niemeyer.net\u003e, Copyright (c) 2012-2014 - Tomi Pievilainen \u003ctomi.pievilainen@iki.fi\u003e, Copyright (c) 2014-2016 - Yaron de Leeuw \u003cme@jarondl.net\u003e, Copyright (c) 2015- - dateutil contributors, Copyright (c) 2015- - Paul Ganssle \u003cpaul@ganssle.io\u003e, Copyright 2017- dateutil contributors, Copyright 2017- Paul Ganssle \u003cpaul@ganssle.io\u003e, copyright 2019, dateutil","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dateutil@2.8.2"}]},{"name":"psycopg2-binary","SPDXID":"SPDXRef-pypi-psycopg2-binary-2.9.9-75c946","versionInfo":"2.9.9","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"LGPL-3.0-or-later WITH openvpn-openssl-exception","copyrightText":"Copyright (c) 2001-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2001-2019, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation, Copyright (c) 2003-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2004-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2005-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2006-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2006-2019 Johan Dahlin \u003cjdahlin@async.com.br\u003e, Copyright (c) 2007 Free Software Foundation, Inc. \u003chttps://fsf.org/\u003e, Copyright (c) 2007-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2007-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2008 Canonical Ltd., Copyright (c) 2008-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2008-2019 James Henstridge \u003cjames@jamesh.id.au\u003e, Copyright (c) 2010-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2010-2019 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2010-2019 Jan Urbanski \u003cwulczer@wulczer.org\u003e, Copyright (c) 2011-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2012-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2013-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2013-2019 Matthew Woodcraft \u003cmatthew@woodcraft.me.uk\u003e, Copyright (c) 2015-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2016-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2017 My Karlsson \u003cmk@acc.umu.se\u003e, Copyright (c) 2017-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2018-2019 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2018-2019, Joyent, Inc., Copyright (c) 2018, Joyent, Inc., Copyright (c) 2020-2021 The Psycopg Team, copyright 2001-2021, Federico Di Gregorio, Daniele Varrazzo, The Psycopg Team, Copyright 2010 by Daniele Varrazzo, Copyright 2013 by Daniele Varrazzo","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/psycopg2-binary@2.9.9"}]},{"name":"billiard","SPDXID":"SPDXRef-pypi-billiard-4.2.0-75c946","versionInfo":"4.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause AND BSD-3-Clause","copyrightText":"Copyright (c) 2006-2008, R Oudkerk, Copyright (c) 2006-2008, R Oudkerk and Contributors, copyright u'2008, Python Software Foundation","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/billiard@4.2.0"}]},{"name":"six","SPDXID":"SPDXRef-pypi-six-1.16.0-75c946","versionInfo":"1.16.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2010-2020 Benjamin Peterson, copyright u'2010-2020, Benjamin Peterson","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/six@1.16.0"}]},{"name":"more-itertools","SPDXID":"SPDXRef-pypi-more-itertools-10.2.0-75c946","versionInfo":"10.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2012 Erik Rose, copyright 2012, Erik Rose","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/more-itertools@10.2.0"}]},{"name":"pluggy","SPDXID":"SPDXRef-pypi-pluggy-1.4.0-75c946","versionInfo":"1.4.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2015 holger krekel (rather uses bitbucket/hpk42), copyright 2016, Holger Krekel","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pluggy@1.4.0"}]},{"name":"packaging","SPDXID":"SPDXRef-pypi-packaging-23.2-75c946","versionInfo":"23.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0 AND BSD-2-Clause","copyrightText":"Copyright (c) Donald Stufft and individual contributors, copyright 2014 s","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/packaging@23.2"}]},{"name":"pyparsing","SPDXID":"SPDXRef-pypi-pyparsing-3.1.1-75c946","versionInfo":"3.1.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2003-2022 Paul T. McGuire, Copyright (c) 2003, Paul McGuire, Copyright (c) 2003,2016, Paul McGuire, Copyright (c) 2003,2019 Paul McGuire, Copyright (c) 2004-2011 Paul T. McGuire, Copyright (c) 2004-2016, Paul McGuire, Copyright (c) 2004, 2006 Paul McGuire, Copyright (c) 2004, Paul McGuire, Copyright (c) 2006, 2016, 2023, Paul McGuire, Copyright (c) 2006, 2019, Paul McGuire, Copyright (c) 2006, Estrate, the Netherlands, Copyright (c) 2006, Paul McGuire, Copyright (c) 2006,2016 Paul McGuire, Copyright (c) 2016, Paul McGuire, Copyright (c) 2018 Paul T. McGuire, Copyright (c) 2021 Dot, Copyright 1989 by Carnegie Mellon University, Copyright 2002-2021, Paul McGuire, Copyright 2003-2019 by Paul McGuire, Copyright 2003, 2019 by Paul McGuire, Copyright 2004-2010, Copyright 2004-2016, by Paul McGuire, Copyright 2004, by Alberto Santini http://www.albertosantini.it/chess, Copyright 2004, Paul McGuire, Copyright 2005-2006, Paul McGuire, Copyright 2006, by Paul McGuire, copyright 2006, Paul McGuire, Copyright 2006, Paul McGuire, Copyright 2007-2011, by Paul McGuire, Copyright 2007, 2023 by Paul McGuire, Copyright 2008 Chris Lambrou, Copyright 2008, by Paul McGuire, Copyright 2008, Paul McGuire, Copyright 2009, 2011 Paul McGuire, Copyright 2010, 2019 by Paul McGuire, Copyright 2010, Paul McGuire, Copyright 2010,2019 Paul McGuire, Copyright 2011, Paul McGuire, Copyright 2011,2015 Paul T. McGuire, Copyright 2012, 2019 Paul T. McGuire, Copyright 2012, Paul T. McGuire, Copyright 2015, Paul McGuire, Copyright 2016, Paul McGuire, copyright 2018-2022, Paul T. McGuire, Copyright 2018, Paul McGuire, Copyright 2019, Paul McGuire, Copyright 2020, Paul McGuire, Copyright 2021, Paul McGuire, Copyright 2022, by Paul McGuire, Copyright 2023, Paul McGuire, Copyright copy 2003-2023 Paul McGuire, Copyright Ellis \u0026 Grant, Inc. 2005, Copyright Paul McGuire, 2019, Copyright Paul McGuire, 2021, Copyright Petri Savolainen \u003cfirstname.lastname@iki.fi\u003e, Copyright, 2006, by Paul McGuire, Copyright, 2007 - Paul McGuire, Copyright, 2010, Paul McGuire, Copyright, 2012 - Paul McGuire","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyparsing@3.1.1"}]},{"name":"zipp","SPDXID":"SPDXRef-pypi-zipp-3.17.0-75c946","versionInfo":"3.17.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/zipp@3.17.0"}]},{"name":"atomicwrites","SPDXID":"SPDXRef-pypi-atomicwrites-1.4.1-75c946","versionInfo":"1.4.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2015-2016 Markus Unterwaditzer, copyright 2015-2017, Markus Unterwaditzer","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/atomicwrites@1.4.1"}]},{"name":"attrs","SPDXID":"SPDXRef-pypi-attrs-23.2.0-75c946","versionInfo":"23.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) N Revealed, Copyright ...\" is shown in the HTML footer. Default is True., Copyright (c) 2015 Hynek Schlawack, Copyright (c) 2015 Hynek Schlawack\", Copyright (c) 2015 Hynek Schlawack\" == mod.__copyright, Hynek Schlawack copyright f'2015","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/attrs@23.2.0"}]},{"name":"wcwidth","SPDXID":"SPDXRef-pypi-wcwidth-0.2.13-75c946","versionInfo":"0.2.13","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) 2023 Unicode(r), Inc., Copyright (c) 2014 Jeff Quast \u003ccontact@jeffquast.com\u003e, copyright 2017, Jeff Quast","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/wcwidth@0.2.13"}]},{"name":"com.github.PythonFreeCourse/lms","SPDXID":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","versionInfo":"master","downloadLocation":"git+https://github.com/PythonFreeCourse/lms","filesAnalyzed":false,"licenseDeclared":"BSD-3-Clause","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/PythonFreeCourse/lms@master"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-npm-eslint-7.10.0-f5da9f","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-npm-eslint-config-airbnb-base-14.2.0-202eba","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-npm-eslint-plugin-import-2.22.1-bec511","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-npm-stylelint-13.7.2-4b8a13","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-npm-stylelint-config-standard-20.0.0-919d33","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-import-order-0.18.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-packaging-23.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-debugpy-1.8.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-bandit-4.1.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-todo-0.7-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-psycopg2-binary-2.9.9-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-babel-4.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-requests-2.31.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-sqlfluff-2.3.5-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-wtf-peewee-3.0.5-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-githubcodeql-action-analyze-1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-numpy-1.26.4-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-lxml-5.1.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-bandit-1.7.7-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-six-1.16.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pytest-env-1.1.3-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pylint-3.0.3-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-bugbear-24.2.6-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-githubcodeql-action-init-1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pytest-cov-4.1.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-ipdb-0.13.13-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-mccabe-0.7.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-commas-2.1.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-comprehensions-3.14.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pluggy-1.4.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-mypy-1.8.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-githubcodeql-action-autobuild-1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-wrapt-1.16.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-tidy-imports-4.10.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-alfred-1.1.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-python-dotenv-1.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-importlib-metadata-7.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-codecov-codecov-action-1.0.13-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-blind-except-0.2.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pygments-2.17.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-mutable-1.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pyodbc-5.1.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-more-itertools-10.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-amqp-5.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-polyfill-1.0.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-bench-it-1.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-wtf-1.2.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-coverage-7.4.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-jinja2-pluralize-0.3.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-celery-5.3.6-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-zipp-3.17.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-actions-setup-python-1..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-webencodings-0.5.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-limiter-3.5.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-email-validator-2.1.0.post1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-billiard-4.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pyparsing-3.1.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-attrs-23.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-wcwidth-0.2.13-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-itsdangerous-2.1.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-httpauth-4.8.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-babel-2.14.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-builtins-2.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-atomicwrites-1.4.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-actions-checkout-2..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-junitparser-3.1.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-quotes-3.4.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-arrow-1.3.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pycodestyle-2.11.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-print-5.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-loguru-0.7.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-python-dateutil-2.8.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-githubactions-actions-checkout-2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-jedi-0.19.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-gunicorn-22.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-eradicate-1.5.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-jinja2-3.1.3-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-login-0.6.3-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-mail-0.9.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pycparser-2.21-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-defusedxml-0.7.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-werkzeug-3.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-certifi-2024.2.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-peewee-3.17.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pyflakes-3.2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-admin-1.6.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-pytest-8.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-docker-pycreds-0.4.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-mypy-extensions-1.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-7.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flask-3.0.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-flake8-broken-line-1.0.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relatedSpdxElement":"SPDXRef-pypi-wtforms-3.1.2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-PythonFreeCourse-lms-master-40120f","relationshipType":"DESCRIBES"}]}