gam7 7.21.2__tar.gz → 7.21.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of gam7 might be problematic. Click here for more details.
- {gam7-7.21.2 → gam7-7.21.3}/PKG-INFO +1 -1
- {gam7-7.21.2 → gam7-7.21.3}/src/GamCommands.txt +4 -4
- {gam7-7.21.2 → gam7-7.21.3}/src/GamUpdate.txt +5 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/__init__.py +20 -10
- gam7-7.21.3/wiki/GAM-Release-Process.md +19 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/actions/decrypt.sh +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/actions/entitlements.plist +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/stale.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/workflows/build.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/workflows/get-cacerts.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/workflows/pushwiki.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/.github/workflows/pypi.yml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/LICENSE +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/README.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/pyproject.toml +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/.gitignore +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/LICENSE +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/README.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/callgam.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/__main__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/auth.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/client.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/core.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/data.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/http.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/http_core.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/mock_http.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/token_store.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/atom/url.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/cacerts.pem +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glapi.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glcfg.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glclargs.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glentity.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glglobals.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glmsgs.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glskus.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/glverlibs.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gamlib/yubikey.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/service.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam-install.sh +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam-setup.bat +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam.exe.manifest +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam.spec +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/gam.wxs +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/license.rtf +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/hooks/hook-googleapiclient.model.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/hooks/hook-httplib2.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/mkGamRef.py +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/openssl.props +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/tools/ssd.mjs +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/src/version_info.txt.in +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/00scratch.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Addresses.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Administrators.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Alert-Center.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Aliases.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Authorization.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/BNF-Syntax.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Basic-Items.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Bulk-Processing.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Business-Account-Management.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/CSV-Input-Filtering.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/CSV-Output-Filtering.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/CSV-Special-Characters.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Calendars-Access.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Calendars-Events.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Calendars.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chat-Bot-Setup-Use.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-AUE-Counts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Installed-Apps.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Policies.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Printers.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Profile-Management.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Version-Counts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Chrome-Version-History.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/ChromeOS-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Classroom-Courses.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Classroom-Guardians.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Classroom-Invitations.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Classroom-Membership.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Classroom-StudentGroups.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Channel.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Identity-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Identity-Groups.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Identity-Policies.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Cloud-Storage.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Collections-of-Items.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Collections-of-Users.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Command-Line-Parsing.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Command-Logging-Progress.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Context-Aware-Access-Levels.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Customer.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Domain-People-Contacts-Profiles.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Domain-SharedContacts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Domains-Verification.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Domains.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Downloads-Installs.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Drive-File-Selection.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Drive-Items.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Drive-REST-API-v3.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Email-Audit-Monitor.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Find-File-Owner.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GAM-Public-Chat-Room.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GAM-Return-Codes.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GAM7-on-Android-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GAM7-on-Chrome-OS-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/GamUpdates.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Global-Address-List.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Google-Data-Transfers.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Google-Network-Addresses.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Groups-Membership.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Groups.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/HTTPS-Proxy.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Home.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/How-to-Install-GAM7.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/How-to-Uninstall-GAM7.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/How-to-Update-GAM7.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Inbound-SSO.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Install-GAM-as-Python-Library.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Licenses.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/List-Items.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/List.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Mobile-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Organizational-Units.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Other-Resources.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Permission-Matches.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Python-Regular-Expressions.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/README.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Rclone.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Reports.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Reseller.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Resources.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/SSL-Root-CA-Certificates.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Schemas.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Scripts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Send-Email.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Shared-Drives.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Sites.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Tag-Replace.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Todrive.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Unmanaged-Accounts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Upgrade-Benefits.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Analytics-Admin.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Application-Specific-Passwords.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Backup-Verification-Codes.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Calendars-Access.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Calendars-Events.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Calendars.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Chat.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Classification-Labels.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Classroom-Profile.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Contacts-Delegates.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Contacts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Deprovision.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Activity-Settings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Cleanup.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Comments.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Copy-Move.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Files-Display.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Files-Manage.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Orphans.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Ownership.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Permissions.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Query.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Revisions.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Shortcuts.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Drive-Transfer.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Forms.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-CSE.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Delegates.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Filters.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Forwarding.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Labels.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Messages-Threads.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Profile.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-S-MIME.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Gmail-Settings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Group-Membership.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Keep-Notes.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Looker-Studio.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Meet.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-People-Contacts-Profiles.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Photo.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Profile-Photo.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Profile-Sharing.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Shared-Drives.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Signout-Turnoff2SV.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Spreadsheets.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Tag-Manager.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Tasks.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Tokens.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-Web-Resources-and-Sites.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users-YouTube.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Users.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Using-GAM7-with-a-YubiKey.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Vault-Takeout.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/Version-and-Help.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/_Sidebar.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/gam.cfg.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-AdminSettingsExamples.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Android-Installation.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-BulkOperations.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-CalendarExamples.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Chat-Bot.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Chrome-Browser-Management.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Chrome-OS-Installation.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Chrome-Policy-Settings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Cloud-Identity-Groups.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Calendar-Resources.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Calendars.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Definitions.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Drive.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Email.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Group-Attributes.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Groups.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Command-Reference-Users.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Context-Aware-Access-Levels.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-CreatingClientSecretsFile.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Custom-Schemas.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Data-Transfers.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-DomainVerification.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-ExamplesAccountAuditing.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-ExamplesCSV.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-ExamplesEmailSettings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-ExamplesOrganizations.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM-Discussion-Group.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM-on-Android-and-Chrome-OS.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM-options-files.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM-with--minimal-GCP-rights.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM3CSVListings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM3DirectoryCommands.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM3GroupSettings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GAM7-FAQ.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Google-Vault---Takeout-Commands.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-GoogleDriveManagement.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Grouping-18-or-Older-Users.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Home.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-How-to-upgrade-from-Standard-GAM.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Inbound-SSO-Settings.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-LicenseExamples.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Managing-Admins.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Managing-CloudPrint-Printers.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Managing-Devices.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Managing-Google-Classroom.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-OAuthKeyManagement.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Printers.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-ResellerCommands.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Running-GAM-on-Google-Compute-Engine-(GCE)-Securely.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-SecurityExamples.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-UnmanagedUsersExamples.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Use-a-Yubikey.md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
- {gam7-7.21.2 → gam7-7.21.3}/wiki/l-_Footer.md +0 -0
|
@@ -5710,7 +5710,7 @@ gam create|add user <EmailAddress> [ignorenullpassword] <UserAttribute>*
|
|
|
5710
5710
|
(groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
5711
5711
|
[alias|aliases <EmailAddressList>]
|
|
5712
5712
|
[license <SKUIDList> [product|productid <ProductID>]]
|
|
5713
|
-
[notify <EmailAddressList>
|
|
5713
|
+
[[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
5714
5714
|
[subject <String>]
|
|
5715
5715
|
[notifypassword <String>]
|
|
5716
5716
|
[from <EmailAaddress>]
|
|
@@ -5736,7 +5736,7 @@ gam update user <UserItem> [ignorenullpassword] <UserAttribute>*
|
|
|
5736
5736
|
[createifnotfound] [notfoundpassword (random [<Integer>])|blocklogin|<Password>]
|
|
5737
5737
|
(groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
5738
5738
|
[alias|aliases <EmailAddressList>]
|
|
5739
|
-
[notify <EmailAddressList>
|
|
5739
|
+
[[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
5740
5740
|
[subject <String>]
|
|
5741
5741
|
[notifypassword <String>]
|
|
5742
5742
|
[from <EmailAaddress>]
|
|
@@ -5774,7 +5774,7 @@ gam update users <UserTypeEntity> [ignorenullpassword] <UserAttribute>*
|
|
|
5774
5774
|
[createifnotfound] [notfoundpassword (random [<Integer>])|blocklogin|<Password>]
|
|
5775
5775
|
(groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
5776
5776
|
[alias|aliases <EmailAddressList>]
|
|
5777
|
-
[notify <EmailAddressList>
|
|
5777
|
+
[[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
5778
5778
|
[subject <String>]
|
|
5779
5779
|
[notifypassword <String>]
|
|
5780
5780
|
[from <EmailAddress>]
|
|
@@ -5811,7 +5811,7 @@ gam <UserTypeEntity> update users [ignorenullpassword] <UserAttribute>*
|
|
|
5811
5811
|
[createifnotfound] [notfoundpassword (random [<Integer>])|blocklogin|<Password>]
|
|
5812
5812
|
(groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
5813
5813
|
[alias|aliases <EmailAddressList>]
|
|
5814
|
-
[notify <EmailAddressList>
|
|
5814
|
+
[[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
5815
5815
|
[subject <String>]
|
|
5816
5816
|
[notifypassword <String>]
|
|
5817
5817
|
[from <EmailAaddress>]
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
7.21.03
|
|
2
|
+
|
|
3
|
+
Added option `notifyrecoveryemail` to `gam create user` and `gam <UserTypeEntity> update user password <String>`
|
|
4
|
+
that sends the passsword notification email to the user's recovery email address (if defined).
|
|
5
|
+
|
|
1
6
|
7.21.02
|
|
2
7
|
|
|
3
8
|
GAM now builds on macOS 26 Tahoe and properly identifies the OS.
|
|
@@ -25,7 +25,7 @@ https://github.com/GAM-team/GAM/wiki
|
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
__author__ = 'GAM Team <google-apps-manager@googlegroups.com>'
|
|
28
|
-
__version__ = '7.21.
|
|
28
|
+
__version__ = '7.21.03'
|
|
29
29
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
|
30
30
|
|
|
31
31
|
#pylint: disable=wrong-import-position
|
|
@@ -43947,6 +43947,7 @@ def getUserAttributes(cd, updateCmd, noUid=False):
|
|
|
43947
43947
|
invalidArgumentExit(Cmd.OB_SCHEMA_NAME_FIELD_NAME)
|
|
43948
43948
|
|
|
43949
43949
|
parameters = {
|
|
43950
|
+
'notifyRecoveryEmail': False,
|
|
43950
43951
|
'verifyNotInvitable': False,
|
|
43951
43952
|
'createIfNotFound': False,
|
|
43952
43953
|
'noActionIfAlias': False,
|
|
@@ -43963,7 +43964,7 @@ def getUserAttributes(cd, updateCmd, noUid=False):
|
|
|
43963
43964
|
body = {'name': {'givenName': UNKNOWN, 'familyName': UNKNOWN}}
|
|
43964
43965
|
body['primaryEmail'] = getEmailAddress(noUid=noUid)
|
|
43965
43966
|
notFoundBody = {}
|
|
43966
|
-
notify = {'subject': '', 'message': '', 'html': False, 'charset': UTF8, 'password': ''}
|
|
43967
|
+
notify = {'recipients': [], 'subject': '', 'message': '', 'html': False, 'charset': UTF8, 'password': ''}
|
|
43967
43968
|
primary = {}
|
|
43968
43969
|
updatePrimaryEmail = {}
|
|
43969
43970
|
groupOrgUnitMap = None
|
|
@@ -43975,7 +43976,9 @@ def getUserAttributes(cd, updateCmd, noUid=False):
|
|
|
43975
43976
|
while Cmd.ArgumentsRemaining():
|
|
43976
43977
|
myarg = getArgument()
|
|
43977
43978
|
if myarg == 'notify':
|
|
43978
|
-
notify['recipients']
|
|
43979
|
+
notify['recipients'].extend(getNormalizedEmailAddressEntity(shlexSplit=True, noLower=True))
|
|
43980
|
+
elif myarg == 'notifyrecoveryemail':
|
|
43981
|
+
parameters['notifyRecoveryEmail'] = True
|
|
43979
43982
|
elif myarg == 'subject':
|
|
43980
43983
|
notify['subject'] = getString(Cmd.OB_STRING)
|
|
43981
43984
|
elif myarg in SORF_MSG_FILE_ARGUMENTS:
|
|
@@ -44391,7 +44394,7 @@ def createUserAddAliases(cd, user, aliasList, i, count):
|
|
|
44391
44394
|
# (groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
44392
44395
|
# [alias|aliases <EmailAddressList>]
|
|
44393
44396
|
# [license <SKUID> [product|productid <ProductID>]]
|
|
44394
|
-
# [notify <EmailAddressList>
|
|
44397
|
+
# [[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
44395
44398
|
# [subject <String>]
|
|
44396
44399
|
# [notifypassword <String>]
|
|
44397
44400
|
# [from <EmailAaddress>]
|
|
@@ -44409,7 +44412,7 @@ def doCreateUser():
|
|
|
44409
44412
|
suffix = 0
|
|
44410
44413
|
originalEmail = body['primaryEmail']
|
|
44411
44414
|
atLoc = originalEmail.find('@')
|
|
44412
|
-
fields = '*' if tagReplacements['subs'] else 'primaryEmail,name'
|
|
44415
|
+
fields = '*' if tagReplacements['subs'] else 'primaryEmail,name,recoveryEmail'
|
|
44413
44416
|
while True:
|
|
44414
44417
|
user = body['primaryEmail']
|
|
44415
44418
|
if parameters['verifyNotInvitable']:
|
|
@@ -44450,7 +44453,9 @@ def doCreateUser():
|
|
|
44450
44453
|
createUserAddToGroups(cd, result['primaryEmail'], addGroups, 0, 0)
|
|
44451
44454
|
if addAliases:
|
|
44452
44455
|
createUserAddAliases(cd, result['primaryEmail'], addAliases, 0, 0)
|
|
44453
|
-
if notify.get('recipients'):
|
|
44456
|
+
if (notify.get('recipients') or (parameters['notifyRecoveryEmail'] and result.get('recoveryEmail'))):
|
|
44457
|
+
if parameters['notifyRecoveryEmail'] and result.get('recoveryEmail'):
|
|
44458
|
+
notify['recipients'].append(result['recoveryEmail'])
|
|
44454
44459
|
sendCreateUpdateUserNotification(result, notify, tagReplacements)
|
|
44455
44460
|
for productSku in parameters[LICENSE_PRODUCT_SKUIDS]:
|
|
44456
44461
|
productId = productSku[0]
|
|
@@ -44493,7 +44498,7 @@ def verifyUserPrimaryEmail(cd, user, createIfNotFound, i, count):
|
|
|
44493
44498
|
# [createifnotfound] [notfoundpassword (random [<Integer>])|blocklogin|<Password>]
|
|
44494
44499
|
# (groups [<GroupRole>] [[delivery] <DeliverySetting>] <GroupEntity>)*
|
|
44495
44500
|
# [alias|aliases <EmailAddressList>]
|
|
44496
|
-
# [notify <EmailAddressList>
|
|
44501
|
+
# [[notify <EmailAddressList>] [notifyrecoveryemail]
|
|
44497
44502
|
# [subject <String>]
|
|
44498
44503
|
# [notifypassword <String>]
|
|
44499
44504
|
# [from <EmailAaddress>]
|
|
@@ -44522,7 +44527,7 @@ def updateUsers(entityList):
|
|
|
44522
44527
|
else:
|
|
44523
44528
|
checkImmutableOUs = False
|
|
44524
44529
|
i, count, entityList = getEntityArgument(entityList)
|
|
44525
|
-
fields = '*' if tagReplacements['subs'] else 'primaryEmail,name'
|
|
44530
|
+
fields = '*' if tagReplacements['subs'] else 'primaryEmail,name,recoveryEmail'
|
|
44526
44531
|
for user in entityList:
|
|
44527
44532
|
i += 1
|
|
44528
44533
|
user = userKey = normalizeEmailAddressOrUID(user)
|
|
@@ -44598,7 +44603,10 @@ def updateUsers(entityList):
|
|
|
44598
44603
|
entityActionPerformed([Ent.USER, user], i, count)
|
|
44599
44604
|
if PwdOpts.filename and PwdOpts.password:
|
|
44600
44605
|
writeFile(PwdOpts.filename, f'{userKey},{PwdOpts.password}\n', mode='a', continueOnError=True)
|
|
44601
|
-
if parameters['notifyOnUpdate'] and notify
|
|
44606
|
+
if (parameters['notifyOnUpdate'] and notify['password'] and
|
|
44607
|
+
(notify.get('recipients') or (parameters['notifyRecoveryEmail'] and result.get('recoveryEmail')))):
|
|
44608
|
+
if parameters['notifyRecoveryEmail'] and result.get('recoveryEmail'):
|
|
44609
|
+
notify['recipients'].append(result['recoveryEmail'])
|
|
44602
44610
|
sendCreateUpdateUserNotification(result, notify, tagReplacements, i, count, createMessage=False)
|
|
44603
44611
|
break
|
|
44604
44612
|
except GAPI.conditionNotMet as e:
|
|
@@ -44632,8 +44640,10 @@ def updateUsers(entityList):
|
|
|
44632
44640
|
createUserAddToGroups(cd, result['primaryEmail'], addGroups, i, count)
|
|
44633
44641
|
if addAliases:
|
|
44634
44642
|
createUserAddAliases(cd, result['primaryEmail'], addAliases, i, count)
|
|
44635
|
-
if notify.get('recipients'):
|
|
44643
|
+
if (notify.get('recipients') or (parameters['notifyRecoveryEmail'] and result.get('recoveryEmail'))):
|
|
44636
44644
|
notify['password'] = notify['notFoundPassword']
|
|
44645
|
+
if parameters['notifyRecoveryEmail'] and result.get('recoveryEmail'):
|
|
44646
|
+
notify['recipients'].append(result['recoveryEmail'])
|
|
44637
44647
|
sendCreateUpdateUserNotification(result, notify, tagReplacements, i, count)
|
|
44638
44648
|
except GAPI.duplicate:
|
|
44639
44649
|
duplicateAliasGroupUserWarning(cd, [Ent.USER, body['primaryEmail']], i, count)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Steps to release a new GAM version
|
|
2
|
+
1. In a final commit before release:
|
|
3
|
+
- [src/gam/__init.py](https://github.com/GAM-team/GAM/blob/main/src/gam/__init__.py) `__version___` value should be updated to the new version.
|
|
4
|
+
- [src/GamUpdate.txt](https://github.com/GAM-team/GAM/blob/main/src/GamUpdate.txt) should be updated with a high-level changelog.
|
|
5
|
+
- [wiki/GamUpdates.md](https://github.com/GAM-team/GAM/blob/main/wiki/GamUpdates.md) should be updated with same high-level changelog.
|
|
6
|
+
2. The [build.yaml](https://github.com/GAM-team/GAM/blob/main/.github/workflows/build.yml) Github Action for final commit should complete successfully and creating a new dated Draft release.
|
|
7
|
+
- We should *NEVER* upload release files manually. Only release files automatically created and [attested](https://github.com/GAM-team/GAM/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official#github-attestation-linuxmacoswindows) as created by the Github Action should be used.
|
|
8
|
+
3. Edit the Draft release:
|
|
9
|
+
- Create a new tag with the format: `vN.NN.NN` where N.NN.NN is the GAM release version.
|
|
10
|
+
- name the release "GAM N.NN.NN" where N.NN.NN is the GAM release version.
|
|
11
|
+
- Include the changelog details for the new version in details.
|
|
12
|
+
- leave "Set as pre-release" unchecked and "Set as the latest release" checked.
|
|
13
|
+
- Publish the release.
|
|
14
|
+
|
|
15
|
+
# TODO: Release Process Improvements
|
|
16
|
+
- copying changelog between GamUpdate.txt, GamUpdates.md and release description is manual and tedious. Automate it.
|
|
17
|
+
- copying version string from gam/__init__.py, changelogs and release details and tag in manual and tedious. Automate it.
|
|
18
|
+
- See if we can block releases with binaries not uploaded by GitHub Actions to further secure release pipelines.
|
|
19
|
+
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|