tuipet 0.5.332__tar.gz → 0.5.333__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.
- {tuipet-0.5.332/src/tuipet.egg-info → tuipet-0.5.333}/PKG-INFO +1 -1
- {tuipet-0.5.332 → tuipet-0.5.333}/pyproject.toml +1 -1
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/app.py +1 -1
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/arena.py +6 -2
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/arenafx.py +18 -0
- {tuipet-0.5.332 → tuipet-0.5.333/src/tuipet.egg-info}/PKG-INFO +1 -1
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_scene_actors.py +36 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/LICENSE +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/README.md +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/setup.cfg +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/__init__.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/__main__.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/accountscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/adventure.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/adventurescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/albumscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/anim.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/appactions.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/appboot.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/assistscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/backgrounds.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/backgroundscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/battle.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/battlescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/bugscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/cloudsync.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/attr_icons.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/backgrounds.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/battle_fx.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/battle_overlays.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/careEffect.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/deviceAttacks.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/digicoreMenuConfig.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/digimon.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/dropRate.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/effects.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/eggUnlock.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/eggs.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/elementAffinity.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/enemies.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/evolutions.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/fieldAffinity.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/foods.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/hp_dummies.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/icons.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/items.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/jogress_overlays.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/lines.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/lootTable.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/maps.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/orbs.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/shopConsumable.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/alarm.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/angry.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/attack.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/attackHit.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/battle.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/boot.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/cancel.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/champion.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/click.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/compatible.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/confirm.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/death.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/eat.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/error.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/evolve.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/happy.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/hatch.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/jogress.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/largePoop.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/lastBite.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/lose.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/menu.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/mischief.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/poop.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/refuse.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/reward.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/scroll.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/select.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/smallPoop.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/startBattle.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/strongAttack.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/strongHit.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/trainhit.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/wash.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sounds/win.wav +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/sprites.json.gz +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/titles.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/tournies.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/towns.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/train_wall.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/vitems.json +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data/zones.csv +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data_core.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data_meta.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data_shop.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/data_world.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/deathscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/digicore.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/digicorescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/disciplinescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/dnascreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/egg.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/eggguidescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/eggmigrate.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/eggselectscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/evolution.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/feedscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/grid.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/hallscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/helpscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/hostinfo.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/itemfx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/jogress.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/jogressscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/lines.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/lobbybout.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/lobbychat.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/lobbyscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/menu.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/net.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/optionsscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/persistence.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/persistio.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/pet.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/petbase.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/petbattle.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/petbody.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/petcare.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/petdna.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/placeholder.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/raidscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/render.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/rival.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/shop.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/shopscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/sound.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/statusbox.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/strikefx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/theme.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/themescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/titlescreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/tournament.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/tournamentscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/towneggscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/townscreen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/training.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet/update.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet.egg-info/SOURCES.txt +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet.egg-info/dependency_links.txt +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet.egg-info/entry_points.txt +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet.egg-info/requires.txt +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/src/tuipet.egg-info/top_level.txt +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_boss.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_conditions.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_drain.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_encounters.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_finds.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_foundation.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_geography.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_hazards.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_holiday.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_march.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_placement.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_progression.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_replay.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_rewards.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_score.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_shop.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_streak.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_summary.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_towns.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_adventure_transport.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_album_completable.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_album_dex.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_album_screen.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_anim_canon.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_anim_hardening.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_anim_timing.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_announce.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_armor_canon.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_audit_fixes.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_auto_care.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_auto_update.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_away_flag.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_background_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_backgrounds.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_battle_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_battle_race.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_bedtime.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_birthday.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_body_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_body_tells.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_bugreport.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_call_cadence.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_canon_discipline.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_canon_injury.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_card_runoffs.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_care_asleep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_care_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_care_bonus.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_catalog_categories.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_catalog_record.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_catalog_touches.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_clock_units.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_completeness_sweep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_constant_shadowing.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_cup_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_cup_cadence.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_cup_festival_eggs.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_cup_theater.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dark_room_fx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_data.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_data_facade.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dead_gate.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_death.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_device_lines.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_digicore.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_digimemory.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_digimental_gates.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_distribution.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_divergence.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dmx_level.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dna_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dna_charge.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_dna_slim.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_effects_integrity.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_dominance.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_economy.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_guide.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_guide_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_unlock.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_egg_unlock_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_encoding.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_energy_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_evolution.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_evolution_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_evolution_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_evolution_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_feed.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_feeding_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_festival_gifts.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_filth_sick_rate.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_filth_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_food_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_fusion_mode_canon.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_fx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_gift_birthday_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_hall.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_hardening_0712.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_help.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_hint_strips.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_holiday_decor.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_home_battle.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_honors.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_hud.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_humulos_eggs.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_hunger.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_ios_support.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_item_expansion.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_item_heal.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_itemfx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_items_p5.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_items_p6.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_items_sweep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_jogress.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_jogress_canon.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_jogress_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_jogress_wire.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_ko6_gate.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_ko6_reachable.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_line_anchoring.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_line_curation.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lines.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_liveplay_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lobby.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lobby_admin.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lobby_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lobby_chat_polish.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_lobby_screens.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_menu_bounds.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_menu_runoffs.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_messages.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_mortality_math.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_msg_strip.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_nav_quit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_night_palette.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_note_marquee.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_options.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_orb_integrity.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_panel_smoke.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_performance.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_persistence.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_persistence_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_pet_effect.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_poop_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_poop_model.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_poop_placement.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_poop_report.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_pvp_duel.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_qol_polish.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_raid.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_rank_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_render_budgets.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_rival.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_road_presents.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_robustness.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_rooms.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_save_integrity.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_scene_picker.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_screen_sweep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sfx_scroll.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_shop_clone.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_shop_dossier_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_shops_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sickness_clone.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_silent_failures.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sleep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sleep_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sleep_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sound.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sound_ios.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_special_idles.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_stage_arrival.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_status_box.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_status_box_sweep.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_status_icons.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_sync.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_theme.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_theme_contrast.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_tier1_robustness.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_tier2_onboarding.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_tier3_moments.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_timing_honesty.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_tournament.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_town_cup.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_town_egg_market.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_town_shop_economy.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_training_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_training_clone.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_training_hp.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_training_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_ui_stats.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_update.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_update_install.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_verx.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_visual_audit.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_visual_polish.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_weight_system.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_whats_new.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_wild_memory.py +0 -0
- {tuipet-0.5.332 → tuipet-0.5.333}/tests/test_win_eggs.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tuipet
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.333
|
|
4
4
|
Summary: A terminal virtual pet (Digimon V-Pet style) rendered with halfblock sprites, built on data from the real devices.
|
|
5
5
|
Author-email: Joel Taylor <joeltaylor734@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -150,7 +150,7 @@ class TuiPetApp(ActionsMixin, App):
|
|
|
150
150
|
"""
|
|
151
151
|
# the release-news line (title-screen msg box, first launch per build) --
|
|
152
152
|
# UPDATE THIS WITH EVERY RELEASE that ships something player-visible
|
|
153
|
-
WHATS_NEW = ("
|
|
153
|
+
WHATS_NEW = ("THE FESTIVAL DECORATION STOPS DRAWING THROUGH YOUR MON: the prop in the arena corner never joined the rule that keeps the poop pile and the sick skull out of your pet's way, so on festival days the roamer walked straight into it and the decoration punched through the sprite. It is a wall now, like the others — your mon turns at it instead of wearing it. The card also names the day above your vitals so the little sprite in the corner reads as a holiday and not a stuck pixel.")
|
|
154
154
|
|
|
155
155
|
BINDINGS = [
|
|
156
156
|
# jogress is LOBBY-ONLY (fusion needs a real partner from the
|
|
@@ -32,7 +32,7 @@ from .arenafx import ( # noqa: F401,E402
|
|
|
32
32
|
PLAY_HOP, PLAY_HOP_H, PLAY_LEAD, POOP_PAD, POOP_W, SCREEN_COLS,
|
|
33
33
|
SCREEN_ROWS, SICK_ZONE, SPRITE_W, _FxCtx, _WINDOW, _clip_win,
|
|
34
34
|
_HIDDEN_STATUS_ICONS, _blit, _effect_overlay, _evol_strobe, _filth_pts,
|
|
35
|
-
_filth_right, _sick_mark_up)
|
|
35
|
+
_filth_right, _holiday_right, _sick_mark_up)
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
def hearts(n, total=4, color=None):
|
|
@@ -190,7 +190,11 @@ class Screen(FxMixin, Static):
|
|
|
190
190
|
# a hard right one -- sleep/sick/startle bypass the roamer's bounds,
|
|
191
191
|
# so the clamp here is what actually guarantees no overlap.
|
|
192
192
|
base = PET_BASE_X
|
|
193
|
-
|
|
193
|
+
# the LEFT wall is whichever occupant reaches furthest in: the filth
|
|
194
|
+
# block, or today's festival prop (which joined this clamp 2026-08-01
|
|
195
|
+
# -- see _holiday_right; it had been drawing straight through the mon)
|
|
196
|
+
lo = max(_filth_right(pet.poop) if pet.poop else grid.X0,
|
|
197
|
+
_holiday_right()) - base
|
|
194
198
|
cap = ((grid.X1 - SICK_ZONE if _sick_mark_up(pet) else grid.X1)
|
|
195
199
|
- SPRITE_W) - base
|
|
196
200
|
xshift = min(max(xshift, lo), max(cap, lo)) # poop wins over the skull (it yields when crowded)
|
|
@@ -60,6 +60,24 @@ def _evol_strobe(c):
|
|
|
60
60
|
if ev[y % mh][x % mw] == "1"]
|
|
61
61
|
|
|
62
62
|
|
|
63
|
+
def _holiday_right(today=None):
|
|
64
|
+
"""Right edge x of TODAY's festival prop, or grid.X0 on an ordinary day.
|
|
65
|
+
|
|
66
|
+
⭐The decor is a LEFT-WALL occupant exactly like the filth block (Joel
|
|
67
|
+
2026-08-01: "my mon is clipping right into it. looks like shit"). The
|
|
68
|
+
exclusive-floor-zone law -- filth a hard left wall, the sick skull a hard
|
|
69
|
+
right one -- predates the prop by three months, and when the prop landed
|
|
70
|
+
(2026-07-24) it simply never joined the clamp. Its own comment claimed it
|
|
71
|
+
"sits where a resting pet does not reach", which is true of a CENTRED
|
|
72
|
+
sleeper and false of the roamer, which walks the whole band; and the
|
|
73
|
+
overlay is stamped AFTER the sprite, so the prop punched straight through
|
|
74
|
+
the mon. Four days a year, the arena looked broken."""
|
|
75
|
+
deco = _holiday_decor(today)
|
|
76
|
+
if not deco:
|
|
77
|
+
return grid.X0
|
|
78
|
+
return grid.X0 + max(len(r) for r in deco)
|
|
79
|
+
|
|
80
|
+
|
|
63
81
|
def _filth_right(count):
|
|
64
82
|
"""Right edge x of the filth block: fixed POOP_W columns like DVPet's 30px slots."""
|
|
65
83
|
n = min(count or 0, POOP_MAX_PILES)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tuipet
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.333
|
|
4
4
|
Summary: A terminal virtual pet (Digimon V-Pet style) rendered with halfblock sprites, built on data from the real devices.
|
|
5
5
|
Author-email: Joel Taylor <joeltaylor734@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -363,3 +363,39 @@ def test_the_ambient_sulk_is_pose_only():
|
|
|
363
363
|
assert '_FX.get("unhappy")' not in src, "the idle painter still draws smoke"
|
|
364
364
|
afx = open("src/tuipet/arenafx.py").read()
|
|
365
365
|
assert afx.count('"unhappy"') >= 2, "the REACTION smoke must survive"
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
def test_no_sprite_draws_on_the_festival_prop(monkeypatch):
|
|
369
|
+
"""⭐Bug report 2026-08-01 (Joel): "my mon is clipping right into it.
|
|
370
|
+
looks like shit."
|
|
371
|
+
|
|
372
|
+
The exclusive-floor-zone law (2026-07-11) gives the filth block a hard
|
|
373
|
+
LEFT wall and the sick skull a hard RIGHT one, and `test_no_sprite_ever_
|
|
374
|
+
draws_on_another` above sweeps it. The festival prop landed three months
|
|
375
|
+
later (2026-07-24) in the top-LEFT corner and never joined the clamp: its
|
|
376
|
+
own comment claimed it "sits where a resting pet does not reach", true of
|
|
377
|
+
a centred sleeper and false of the roamer, which walks the whole band --
|
|
378
|
+
and the overlay is stamped AFTER the sprite, so it punched through the
|
|
379
|
+
mon. Measured before the fix: 11 pixels of crest inside the creature.
|
|
380
|
+
|
|
381
|
+
⚠The sweep above could never catch it, because it runs on whatever day
|
|
382
|
+
the suite runs and 361 of them have no prop -- and conftest's
|
|
383
|
+
`ordinary_day` now pins even that away. This one FORCES each festival."""
|
|
384
|
+
import datetime
|
|
385
|
+
from tuipet import arenafx, tournament
|
|
386
|
+
cap = _paint_capture(monkeypatch)
|
|
387
|
+
for m, d in ((8, 1), (12, 25), (10, 31), (1, 1)):
|
|
388
|
+
monkeypatch.setattr(tournament, "_today",
|
|
389
|
+
lambda mm=m, dd=d: datetime.date(2026, mm, dd))
|
|
390
|
+
assert arenafx._holiday_decor() is not None, (m, d)
|
|
391
|
+
assert arenafx._holiday_right() > grid.X0 # a real wall
|
|
392
|
+
for n, sizes in LOADS:
|
|
393
|
+
random.seed(7)
|
|
394
|
+
p = _pet(weather="Clear", poop=n, poop_sizes=list(sizes))
|
|
395
|
+
s = _screen()
|
|
396
|
+
for i in range(30):
|
|
397
|
+
s.advance(p)
|
|
398
|
+
s.paint(p)
|
|
399
|
+
pet_px = _sprite_px(cap["rows"], cap["xshift"], cap["mirror"])
|
|
400
|
+
hit = pet_px & set(cap["overlay"])
|
|
401
|
+
assert not hit, ((m, d), n, i, sorted(hit)[:6])
|
|
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
|
|
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
|