
    soj9                     %   d dl Z d dlZd dlmZ d dlmZ d dlZ G d d          Z e	ej
                  dk    rVe j                            ej
        d                   s edej
        d          d           eej
        d                    n
 e              ed	          Z ed
d          Z ed          Z ed          Z ed          Z ed          Z edd          Z edd          Z ed          Z ed          Z ed          Z ed          Z ed          Z edd          Z edd          Z edd          Z edd          Z edd          Z ed d!"          Z  ed#d!"          Z! ed$d%          Z" ed&d!"          Z# ed'd(          Z$ ed)          Z% ed*d+          Z& ed,d-          Z' ed.d!"          Z( ed/d0          Z) ed1d2          Z* ed3d4          Z+ ed5d6          Z, ed7d!"          Z- ed8d!"          Z. ed9d!"          Z/ ed:d;          Z0 ed<d=          Z1 ed>d!"          Z2 ed?d!"          Z3 ed@d          Z4 edAd!"          Z5 edBdC          Z6 edDd          Z7 edEdF          Z8 edGdF          Z9 edHd          Z: edId          Z; edJdK          Z< edLd6          Z= edMd          Z> edNd          Z? edOdP          Z@ edQd6          ZA edRd          ZB edSd          ZC edTdU          ZD edVd6          ZE edWd          ZF edXd          ZG edYdP          ZH edZd6          ZI ed[d          ZJ ed\d          ZK ed]dU          ZL ed^d6          ZM ed_d          ZN ed`d          ZO edadU          ZP edbd6          ZQ edcd          ZR eddd          ZS ededU          ZT edfd6          ZU edgd          ZV edhd          ZW edidK          ZX edjd6          ZY edkd          ZZ edld          Z[ edmdU          Z\ ednd6          Z] edod          Z^ edpd          Z_ edqdr          Z` edsd6          Za edtd          Zb edud          Zc edvdw          Zd edxd6          Ze edyd          Zf edzd          Zg ed{d|          Zh ed}d6          Zi ed~d          Zj edd          Zk edd|          Zl edd6          Zm edd          Zn edd          Zo edd          Zp edd6          Zq edd          Zr edd          Zs edd          Zt edd6          Zu edd6          Zv edd          Zw edd|          Zx edd6          Zy edd          Zz edd          Z{ edd          Z| edd6          Z} edd          Z~ edd          Z edd          Z edd6          Z edd          Z edd          Z edd|          Z edd6          Z edd          Z edd          Z edd          Z edd6          Z edd          Z edd          Z edd|          Z edd6          Z edd          Z edd          Z edd          Z edd          Z edd6          Z edd          Z edd6          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd2          Z edd          Z eddì          Z edd2          Z eddƬ          Z eddȬ          Z edd          Z eddˬ          Z eddˬ          Z eddˬ          Z eddϬ          Z edd          Z edd          Z eddϬ          Z eddԬ          Z edd          Z edd׬          Z edd          Z eddڬ          Z eddܬ          Z eddެ          Z edd          Z edd4          Z edd4          Z edd          Z eddȬ          Z edd          Z edd4          Z edd0          Z edd          Z edd4          Z edd          Z edd          Z edd          Z edd0          Z edd          Z edd          Z edd          Z edd4          Z eddϬ          Z edd0          Z edd          Z eddϬ          Z edd          Z edd0          Z eddȬ          Z edd          Z edd           Z edd          Z edd          Z edd          Z edd          Z ed	d
          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd          Z edd           Z ed!d"          Z ed#d$          Z ed%d&          Z ed'd(          Z ed)d*          Z ed+d,          Z ed-d.          Z ed/d0          Z ed1d2          Z ed3d4          Z ed5d6          Z ed7d8          Z ed9d          Z ed:d;          Z ed<d=          Z ed>d?          Z ed@dA          Z edBdì          Z edCdD          Z edEdF          Z edGd          Z edHd          Z edId          Z edJd          Z edKd          Z edLdڬ          Z edMdN          Z edOd          Z edPdܬ          Z edQdR          Z edSd6          Z edTd6          Z edUd6          Z edVdW          Z edXd          Z  edYd          Z edZd          Z ed[d\          Z ed]d\          Z ed^d          Z ed_d          Z ed`d          Z edad\          Z edbd          Z	 edcd\          Z
 eddd          Z edee                                ej        z   e$                                z             Z edfd          Z edgdh          Z edidD          Z edjdk          Z edld          Z edmdD          Z edndh          Z edod          Z edpdD          Z edqd          Z edrd          Z edsd;          Z edtdϬ          Z edudȬ          Z edvdڬ          Z edwd          Z edxdy          Z edzd{          Z  ed|d{          Z! ed}dR          Z" ed~dȬ          Z# edd          Z$ eddR          Z% eddڬ          Z& eddˬ          Z' edd          Z( eddD          Z) edd          Z* edd          Z+ edd          Z, edd          Z- eddD          Z. edd          Z/ edd          Z0 eddڬ          Z1 edd          Z2 eddD          Z3 edd          Z4 eddڬ          Z5 edd          Z6 edd2          Z7 eddϬ          Z8 edd          Z9 eddW          Z: edd          Z; edd6          Z< eddˬ          Z= eddˬ          Z> edd          Z? eddϬ          Z@ eddy          ZA edd          ZB edd          ZC edd2          ZD edd          ZE edd0          ZF edd          ZG edd          ZH edd          ZI eddD          ZJ edd          ZK edd4          ZL edd          ZM edd          ZN edd          ZO eddì          ZP edd          ZQ edd?          ZR edd          ZS edd;          ZT eddD          ZU edd          ZV eddì          ZW eddڬ          ZX edd          ZY edd          ZZ edÐdĬ          Z[ edŐdƬ          Z\dS (      N)	strtobool)load_dotenvc                       e Zd ZU g Zed          ed<   ddededefdZdedz  fd	Z	defd
Z
defdZdefdZdefdZdee         fdZd ZdefdZdS )Environment	instancesNFnamedefault_valuecan_be_emptyc                 n    || _         || _        || _        t          j                            |            d S N)r   r	   r
   r   r   append)selfr   r	   r
   s       /app/resources/Environment.py__init__zEnvironment.__init__   s6    	*($$T*****    returnc                     | j         *t          j                            | j        | j                   S t          j                            | j                  }|	| j        rdS |t          d| j         d          |S )z
        Get the environment variable or None if it is not set
        :return: The environment variable or None if it is not set
        :rtype: str | None
        NEnvironment variable  is not set)r	   osenvirongetr   r
   	Exceptionr   values     r   get_or_nonezEnvironment.get_or_none   sz     ):>>$)T-?@@@ 
ty)) =T.=4 =JDIJJJKKKr   c                 p    |                                  }|| j        st          d| j         d          |S )zX
        Get the environment variable
        :return: The environment variable
        Nr   r   )r   r
   r   r   r   s     r   r   zEnvironment.get-   sB    
   ""=!2=JDIJJJKKKr   c                 D    t          |                                           S )zt
        Get the environment variable as an integer
        :return: The environment variable as an integer
        )intr   r   s    r   get_intzEnvironment.get_int8   s    
 488::r   c                 b    ddl m}  |t          |                                                     S )zn
        Get the environment variable as a float
        :return: The environment variable as a float
        r   )format_percentage_value)src.utils.math_utilsr#   floatr   )r   r#   s     r   	get_floatzEnvironment.get_float?   s8    
 	A@@@@@&&uTXXZZ'8'8999r   c                 L    t          |                                           rdndS )zr
        Get the environment variable as a boolean
        :return: The environment variable as a boolean
        TF)r   r   r    s    r   get_boolzEnvironment.get_boolH   s#    
 !,,7tt%7r   c                 d    |                                                      t          j                  S )zl
        Get the environment variable as a list
        :return: The environment variable as a list
        )r   splitcSTANDARD_SPLIT_CHARr    s    r   get_listzEnvironment.get_listO   s#    
 xxzz 5666r   c                 P    d                     |                                           S )z|
        Get the environment variable as a belly amount
        :return: The environment variable as a belly amount
        z{0:,})formatr!   r    s    r   	get_bellyzEnvironment.get_bellyV   s     ~~dllnn---r   c                 *    |                                  S r   )r   r    s    r   __str__zEnvironment.__str__^   s    xxzzr   )NF)__name__
__module____qualname__r   list__annotations__strboolr   r   r   r   r!   r%   r&   r(   r-   r0   r2    r   r   r   r   
   s-        %'ItM"'''+ +S + +4 + + + +S4Z    2	S 	 	 	 	    :5 : : : :8$ 8 8 8 87$s) 7 7 7 7. . .      r   r      zEnvironment file z does not exist	BOT_TOKENBOT_DROP_PENDING_UPDATESFalse)r	   BOT_IDBOT_USERNAMEAPI_IDAPI_HASHTZzAsia/Kolkata	LOG_LEVELINFODB_NAMEDB_HOSTDB_PORTDB_USERDB_PASSWORDDB_LOG_QUERIESLIMIT_TO_AUTHORIZED_USERSAUTHORIZED_USERS LIMIT_TO_AUTHORIZED_GROUPSAUTHORIZED_GROUPSOWNER_IDT)r
   MAIN_GROUP_ID%MAIN_GROUP_TEXT_MESSAGE_BOUNTY_REWARD500000ERROR_LOG_CHAT_IDOPMA_BOT_ID	921260484UPDATES_CHAT_IDUPDATES_CHAT_USERNAMEBounty_Bot_UpdatesSUPPORT_GROUP_LINKzhttps://t.me/One_Piece_chatsTG_REST_CHANNEL_ID$ANTI_SPAM_PRIVATE_CHAT_MESSAGE_LIMIT30"ANTI_SPAM_GROUP_CHAT_MESSAGE_LIMIT20ANTI_SPAM_TIME_INTERVAL_SECONDS60ENABLE_REDDIT_POSTSTrueREDDIT_CLIENT_IDREDDIT_CLIENT_SECRETREDDIT_USER_AGENTREDDIT_ONE_PIECE_SUBREDDITonepieceREDDIT_MEME_PIECE_SUBREDDIT	memepieceSUPABASE_REST_URLSUPABASE_API_KEYSENTRY_ENABLED
SENTRY_DSNSENTRY_ENVIRONMENTdefaultSENTRY_ENABLE_TRACINGSENTRY_TRACES_SAMPLE_RATEz1.0SENTRY_PROFILES_SAMPLE_RATESENTRY_LOG_LEVELSENTRY_LOG_EVENT_LEVELCRON_TEMP_DIR_CLEANUPz0 */12 * * *ENABLE_TIMER_TEMP_DIR_CLEANUP!SHOULD_LOG_TIMER_TEMP_DIR_CLEANUP&SHOULD_RUN_ON_STARTUP_TEMP_DIR_CLEANUPCRON_SEND_LEADERBOARDz0 0 * * SunENABLE_TIMER_SEND_LEADERBOARD!SHOULD_LOG_TIMER_SEND_LEADERBOARD&SHOULD_RUN_ON_STARTUP_SEND_LEADERBOARDCRON_RESET_BOUNTY_POSTER_LIMITz
10 0 * * *&ENABLE_TIMER_RESET_BOUNTY_POSTER_LIMIT*SHOULD_LOG_TIMER_RESET_BOUNTY_POSTER_LIMIT/SHOULD_RUN_ON_STARTUP_RESET_BOUNTY_POSTER_LIMITCRON_RESET_CAN_CHANGE_REGION$ENABLE_TIMER_RESET_CAN_CHANGE_REGION(SHOULD_LOG_TIMER_RESET_CAN_CHANGE_REGION-SHOULD_RUN_ON_STARTUP_RESET_CAN_CHANGE_REGIONCRON_ADD_REGION_BOUNTY_BONUS$ENABLE_TIMER_ADD_REGION_BOUNTY_BONUS(SHOULD_LOG_TIMER_ADD_REGION_BOUNTY_BONUS-SHOULD_RUN_ON_STARTUP_ADD_REGION_BOUNTY_BONUSCRON_ADD_CREW_BOUNTY_BONUS"ENABLE_TIMER_ADD_CREW_BOUNTY_BONUS&SHOULD_LOG_TIMER_ADD_CREW_BOUNTY_BONUS+SHOULD_RUN_ON_STARTUP_ADD_CREW_BOUNTY_BONUSCRON_ADD_CREW_MVP_BOUNTY_BONUS&ENABLE_TIMER_ADD_CREW_MVP_BOUNTY_BONUS*SHOULD_LOG_TIMER_ADD_CREW_MVP_BOUNTY_BONUS/SHOULD_RUN_ON_STARTUP_ADD_CREW_MVP_BOUNTY_BONUSCRON_DAILY_REWARDENABLE_TIMER_DAILY_REWARDSHOULD_LOG_TIMER_DAILY_REWARD"SHOULD_RUN_ON_STARTUP_DAILY_REWARDCRON_RESET_BOUNTY_MESSAGE_LIMIT'ENABLE_TIMER_RESET_BOUNTY_MESSAGE_LIMIT+SHOULD_LOG_TIMER_RESET_BOUNTY_MESSAGE_LIMIT0SHOULD_RUN_ON_STARTUP_RESET_BOUNTY_MESSAGE_LIMITCRON_REDDIT_POST_ONE_PIECEz0 */2 * * *"ENABLE_TIMER_REDDIT_POST_ONE_PIECE&SHOULD_LOG_TIMER_REDDIT_POST_ONE_PIECE+SHOULD_RUN_ON_STARTUP_REDDIT_POST_ONE_PIECECRON_REDDIT_POST_MEME_PIECEz0 1-23/2 * * *#ENABLE_TIMER_REDDIT_POST_MEME_PIECE'SHOULD_LOG_TIMER_REDDIT_POST_MEME_PIECE,SHOULD_RUN_ON_STARTUP_REDDIT_POST_MEME_PIECECRON_SEND_SCHEDULED_PREDICTIONSz*/1 * * * *'ENABLE_TIMER_SEND_SCHEDULED_PREDICTIONS+SHOULD_LOG_TIMER_SEND_SCHEDULED_PREDICTIONS0SHOULD_RUN_ON_STARTUP_SEND_SCHEDULED_PREDICTIONS CRON_CLOSE_SCHEDULED_PREDICTIONS(ENABLE_TIMER_CLOSE_SCHEDULED_PREDICTIONS,SHOULD_LOG_TIMER_CLOSE_SCHEDULED_PREDICTIONS1SHOULD_RUN_ON_STARTUP_CLOSE_SCHEDULED_PREDICTIONS-CRON_REFRESH_ACTIVE_PREDICTIONS_GROUP_MESSAGEz*/20 * * * *5ENABLE_TIMER_REFRESH_ACTIVE_PREDICTIONS_GROUP_MESSAGE9SHOULD_LOG_TIMER_REFRESH_ACTIVE_PREDICTIONS_GROUP_MESSAGE>SHOULD_RUN_ON_STARTUP_REFRESH_ACTIVE_PREDICTIONS_GROUP_MESSAGE&CRON_SCHEDULE_DEVIL_FRUIT_ZOAN_RELEASEz10 0 * * Sun.ENABLE_TIMER_SCHEDULE_DEVIL_FRUIT_ZOAN_RELEASE2SHOULD_LOG_TIMER_SCHEDULE_DEVIL_FRUIT_ZOAN_RELEASE7SHOULD_RUN_ON_STARTUP_SCHEDULE_DEVIL_FRUIT_ZOAN_RELEASECRON_RESPAWN_DEVIL_FRUIT ENABLE_TIMER_RESPAWN_DEVIL_FRUIT$SHOULD_LOG_TIMER_RESPAWN_DEVIL_FRUIT)SHOULD_RUN_ON_STARTUP_RESPAWN_DEVIL_FRUIT$CRON_DEACTIVATE_INACTIVE_GROUP_CHATSz	0 0 * * *,ENABLE_TIMER_DEACTIVATE_INACTIVE_GROUP_CHATS0SHOULD_LOG_TIMER_DEACTIVATE_INACTIVE_GROUP_CHATS5SHOULD_RUN_ON_STARTUP_DEACTIVATE_INACTIVE_GROUP_CHATSCRON_END_INACTIVE_GAMESz*/5 * * * *ENABLE_TIMER_END_INACTIVE_GAMES#SHOULD_LOG_TIMER_END_INACTIVE_GAMES(SHOULD_RUN_ON_STARTUP_END_INACTIVE_GAMESCRON_SET_EXPIRED_BOUNTY_LOANS%ENABLE_TIMER_SET_EXPIRED_BOUNTY_LOANS)SHOULD_LOG_TIMER_SET_EXPIRED_BOUNTY_LOANS.SHOULD_RUN_ON_STARTUP_SET_EXPIRED_BOUNTY_LOANS'CRON_FIGHT_PLUNDER_SCOUT_COUNT_DECREASEz*/15 * * * */ENABLE_TIMER_FIGHT_PLUNDER_SCOUT_COUNT_DECREASE3SHOULD_LOG_TIMER_FIGHT_PLUNDER_SCOUT_COUNT_DECREASE8SHOULD_RUN_ON_STARTUP_FIGHT_PLUNDER_SCOUT_COUNT_DECREASECRON_MINUTE_TASKSENABLE_TIMER_MINUTE_TASKSSHOULD_LOG_TIMER_MINUTE_TASKS"SHOULD_RUN_ON_STARTUP_MINUTE_TASKSADMIN_USER_IDSCRON_SYNC_ADMIN_USERSz	0 0 1 1 *ENABLE_TIMER_SYNC_ADMIN_USERS!SHOULD_LOG_TIMER_SYNC_ADMIN_USERS&SHOULD_RUN_ON_STARTUP_SYNC_ADMIN_USERSTEMP_DIR_CLEANUP_TIME_SECONDS21600BELLY_UPPER_ROUND_AMOUNT1000INACTIVE_GROUP_DAYS7INACTIVE_GROUP_USER_DAYSDAILY_REWARD_BONUS_BASE_AMOUNT10000000 DAILY_REWARD_BONUS_BASE_LOCATION2DAILY_REWARD_BONUS_BASE_STREAK1DAILY_REWARD_BONUS_MAX_STREAK100"DAILY_REWARD_BONUS_BASE_CREW_LEVEL10DAILY_REWARD_BONUS_CREW_MVPDAILY_REWARD_STREAK_DAYS#DAILY_REWARD_PRIZE_BELLY_PERCENTAGE80#DAILY_REWARD_PRIZE_SMILE_PERCENTAGEBOUNTY_POSTER_LIMIT_PIRATE_KINGz-1BOUNTY_POSTER_LIMIT_WARLORD3BOUNTY_POSTER_LIMIT_EMPERORBOUNTY_POSTER_LIMIT_FIRST_MATE0BOUNTY_POSTER_LIMIT_SUPERNOVABOUNTY_POSTER_LIMIT_ROOKIELEADERBOARD_CREW_LIMIT5LEADERBOARD_MIN_ACTIVE_USERSDOC_Q_GAME_REQUIRED_BOUNTYDOC_Q_GAME_OPTIONS_COUNTDOC_Q_GAME_WIN_ODDz0.2'DOC_Q_GAME_OPTIONS_COUNT_FINAL_LOCATION!DOC_Q_GAME_WIN_ODD_FINAL_LOCATIONz0.1DOC_Q_GAME_SHOW_CORRECT_OPTIONDOC_Q_GAME_COOLDOWN_DURATION24GAME_MIN_WAGER5000000GAME_MAX_TOTAL_WAGER_EASY50000000GAME_MAX_TOTAL_WAGER_MEDIUM	200000000#GAME_TURN_NOTIFICATION_TIME_SECONDS GAME_TURN_AUTO_MOVE_TIME_SECONDSGAME_COOLDOWN_DURATION8GAME_CHALLENGE_LIMIT$GAME_GLOBAL_ACCEPT_COOLDOWN_DURATIONGAME_CONFIRMATION_TIMEOUTGAME_START_WAIT_TIME,GAME_INACTIVE_TIME_SINCE_INTERACTION_MINUTES&GAME_INACTIVE_TIME_SINCE_START_MINUTESGAME_GLOBAL_INACTIVE_HOURS12ONE_PIECE_WIKI_URLz!https://onepiece.fandom.com/wiki/%RUSSIAN_ROULETTE_SHOW_BULLET_LOCATIONWHOS_WHO_NEXT_LEVEL_WAIT_TIMESHAMBLES_GRID_SIZE_EASYSHAMBLES_GRID_SIZE_MEDIUMSHAMBLES_GRID_SIZE_HARD13SHAMBLES_NEXT_LEVEL_WAIT_TIMEGUESS_OR_LIFE_STARTING_LIVES GUESS_OR_LIFE_NEW_LIFE_WAIT_TIMEGUESS_OR_LIFE_MAX_CHARACTERS(GUESS_OR_LIFE_MAX_UNIQUE_CHARACTERS_EASY*GUESS_OR_LIFE_MAX_UNIQUE_CHARACTERS_MEDIUM"PUNK_RECORDS_NEXT_DETAIL_WAIT_TIMEPUNK_RECORDS_STARTING_DETAILSLOCATION_PARADISE_IMAGE_URLzhttps://i.imgur.com/omBDMbu.jpgLOCATION_NEW_WORLD_IMAGE_URLzhttps://i.imgur.com/J5EWet5.jpg!LOCATION_FOOSHA_VILLAGE_IMAGE_URLzhttps://i.imgur.com/v8W3lHy.pngLOCATION_SHELLS_TOWN_IMAGE_URLzhttps://i.imgur.com/638z7dA.pngLOCATION_ORANGE_TOWN_IMAGE_URLzhttps://i.imgur.com/2v2UAHc.png)LOCATION_ISLAND_OF_RARE_ANIMALS_IMAGE_URLzhttps://i.imgur.com/S8ejYiJ.png LOCATION_SYRUP_VILLAGE_IMAGE_URLzhttps://imgur.com/klCUJHq.jpgLOCATION_BARATIE_IMAGE_URLzhttps://i.imgur.com/41PA2tE.jpgLOCATION_ARLONG_PARK_IMAGE_URLzhttps://i.imgur.com/6uAZaqn.jpgLOCATION_LOUGETOWN_IMAGE_URLzhttps://i.imgur.com/NfwXoAI.jpg#LOCATION_REVERSE_MOUNTAIN_IMAGE_URLzhttps://i.imgur.com/iamqwq8.pngLOCATION_WHISKEY_PEAK_IMAGE_URLzhttps://i.imgur.com/c5gfVLe.jpg LOCATION_LITTLE_GARDEN_IMAGE_URLzhttps://i.imgur.com/ns5U5S6.pngLOCATION_DRUM_ISLAND_IMAGE_URLzhttps://i.imgur.com/8lvNZbu.png#LOCATION_ARABASTA_KINGDOM_IMAGE_URLzhttps://i.imgur.com/Cw9jqsJ.jpgLOCATION_JAYA_IMAGE_URLzhttps://i.imgur.com/e1NLOjT.pngLOCATION_SKYPIEA_IMAGE_URLzhttps://i.imgur.com/cfJ4o0Z.jpg&LOCATION_LONG_RING_LONG_LAND_IMAGE_URLzhttps://i.imgur.com/M1UZrls.pngLOCATION_WATER_7_IMAGE_URLzhttps://i.imgur.com/IqbkOAP.pngLOCATION_ENIES_LOBBY_IMAGE_URLzhttps://i.imgur.com/56LeSDp.png LOCATION_THRILLER_BARK_IMAGE_URLzhttps://i.imgur.com/vZpyTyU.png&LOCATION_SABAODY_ARCHIPELAGO_IMAGE_URLzhttps://i.imgur.com/DYssFxB.jpg!LOCATION_FISHMAN_ISLAND_IMAGE_URLzhttps://i.imgur.com/kt7zEpu.jpgLOCATION_PUNK_HAZARD_IMAGE_URLzhttps://i.imgur.com/H5AszLU.pngLOCATION_DRESSROSA_IMAGE_URLzhttps://i.imgur.com/sGLRtpO.jpgLOCATION_ZOU_IMAGE_URLzhttps://i.imgur.com/UD2YCV4.jpg$LOCATION_WHOLE_CAKE_ISLAND_IMAGE_URLzhttps://i.imgur.com/fEAM6eN.jpgLOCATION_WANO_COUNTRY_IMAGE_URLzhttps://i.imgur.com/vznQ3W2.jpgLOCATION_EGGHEAD_IMAGE_URLzhttps://static.wikia.nocookie.net/onepiece/images/0/07/Egghead_Infobox.png/revision/latest/scale-to-width-down/228?cb=20250428024126FIGHT_IMMUNITY_DURATION6FIGHT_COOLDOWN_DURATION%FIGHT_MAX_WIN_PROBABILITY_PIRATE_KING99!FIGHT_MAX_WIN_PROBABILITY_EMPEROR95$FIGHT_MAX_WIN_PROBABILITY_FIRST_MATE90#FIGHT_MAX_WIN_PROBABILITY_SUPERNOVA85 FIGHT_MAX_WIN_PROBABILITY_ROOKIE(FIGHT_MAX_WIN_PROBABILITY_FINAL_LOCATION503FIGHT_MAX_WIN_PROBABILITY_DEVIL_FRUIT_DEFENSE_BOOSTz99.99%FIGHT_MIN_WIN_PROBABILITY_PIRATE_KING!FIGHT_MIN_WIN_PROBABILITY_EMPEROR$FIGHT_MIN_WIN_PROBABILITY_FIRST_MATE#FIGHT_MIN_WIN_PROBABILITY_SUPERNOVA FIGHT_MIN_WIN_PROBABILITY_ROOKIE$FIGHT_PLUNDER_REVENGE_DURATION_HOURSFIGHT_PLUNDER_SCOUT_BASE_PRICE10000(FIGHT_PLUNDER_SCOUT_FEE_MULTIPLIER_GROUPPREDICTION_BET_MIN_WAGER#PREDICTION_CREATE_COOLDOWN_DURATION48SEND_MESSAGE_LEADERBOARDSEND_MESSAGE_LOCATION_UPDATE'SEND_MESSAGE_MOVE_TO_NEW_WORLD_PROPOSAL"REQUIRED_LOCATION_LEVEL_DOC_Q_GAME14$REQUIRED_LOCATION_LEVEL_SEND_STICKER&REQUIRED_LOCATION_LEVEL_SEND_ANIMATION'REQUIRED_LOCATION_LEVEL_FORWARD_MESSAGE'REQUIRED_LOCATION_LEVEL_SEND_DICE_EMOJI21'REQUIRED_LOCATION_LEVEL_USE_INLINE_BOTSREQUIRED_LOCATION_LEVEL_FIGHTREQUIRED_LOCATION_LEVEL_GAME&REQUIRED_LOCATION_LEVEL_PREDICTION_BET)REQUIRED_LOCATION_LEVEL_PREDICTION_CREATE+REQUIRED_LOCATION_LEVEL_DEVIL_FRUIT_COLLECT!REQUIRED_LOCATION_LEVEL_LOG_STATSREQUIRED_LOCATION_LEVEL_PLUNDERWHITELIST_FORWARD_MESSAGEWHITELIST_INLINE_BOTSCREW_CREATE_PRICE	100000000CREW_MAX_NAME_LENGTHCREW_DESCRIPTION_MAX_LENGTH200CREW_MAX_MEMBERSCREW_TRANSACTION_TAX_DISCOUNTCREW_POWERUP_BASE_PRICECREW_ABILITY_DURATION_DAYS%CREW_ABILITY_DEFAULT_VALUE_PERCENTAGECREW_MAX_ABILITIES(CREW_ABILITY_RANDOM_MIN_VALUE_PERCENTAGE(CREW_ABILITY_RANDOM_MAX_VALUE_PERCENTAGECREW_MAX_LEVEL_AFTER_RESETCREW_JOIN_REQUESTS_PER_COOLDOWN#CREW_JOIN_REQUEST_COOLDOWN_DURATION-CREW_JOIN_REQUEST_COOLDOWN_SAME_CREW_DURATIONCREW_MAX_CHEST_AMOUNT_RESET
1000000000'DAVY_BACK_FIGHT_REQUEST_EXPIRATION_TIME15DAVY_BACK_FIGHT_START_WAIT_TIME.DAVY_BACK_FIGHT_BOUNTY_RESET_COOLDOWN_DURATION DAVY_BACK_FIGHT_MIN_PARTICIPANTSDAVY_BACK_FIGHT_MIN_DURATIONDAVY_BACK_FIGHT_MAX_DURATION DAVY_BACK_FIGHT_DEFAULT_DURATION)DAVY_BACK_FIGHT_MIN_LOSE_PENALTY_DURATION)DAVY_BACK_FIGHT_MAX_LOSE_PENALTY_DURATION&DAVY_BACK_FIGHT_LOSER_CHEST_PERCENTAGEBOUNTY_GIFT_MIN_AMOUNTBOUNTY_GIFT_TAX_INCREASEBOUNTY_LOAN_MIN_AMOUNTBOUNTY_LOAN_TAX_INCREASEBOUNTY_LOAN_GARNISH_PERCENTAGEBOUNTY_LOAN_MAX_DURATION_DAYSBOUNTY_LOAN_FORGIVENESS_DAYS#BOUNTY_LOAN_ISSUE_COOLDOWN_DURATION(BOUNTY_LOAN_PREDATORY_INTEREST_THRESHOLD$PIRATE_KING_TRANSACTION_TAX_DISCOUNTDEVIL_FRUIT_EXPIRATION_DAYSDEVIL_FRUIT_RESPAWN_HOURS6DEVIL_FRUIT_MAINTAIN_MIN_LATEST_LEADERBOARD_APPEARANCE4,DEVIL_FRUIT_MIN_ACTIVE_USERS_PER_DEVIL_FRUIT.DEVIL_FRUIT_REGULAR_ZOAN_TO_ANCIENT_ZOAN_RATIO%DEVIL_FRUIT_COLLECT_COOLDOWN_DURATIONDEVIL_FRUIT_SMILE_MAX_DAYS&DEVIL_FRUIT_SMILE_DEFECTIVE_PERCENTAGE,ROOKIES_OR_ARRESTED_CAN_VIEW_STATUS_IN_GROUPTAX_BRACKET_0_TOTAL_BOUNTYTAX_BRACKET_0_PERCENTAGETAX_BRACKET_1_TOTAL_BOUNTY	400000000TAX_BRACKET_1_PERCENTAGETAX_BRACKET_2_TOTAL_BOUNTYTAX_BRACKET_2_PERCENTAGETAX_BRACKET_3_TOTAL_BOUNTY
2000000000TAX_BRACKET_3_PERCENTAGETAX_BRACKET_4_TOTAL_BOUNTY
3000000000TAX_BRACKET_4_PERCENTAGETAX_BRACKET_5_TOTAL_BOUNTY
4000000000TAX_BRACKET_5_PERCENTAGE40TAX_BRACKET_6_TOTAL_BOUNTY
5000000000TAX_BRACKET_6_PERCENTAGETAX_BRACKET_7_TOTAL_BOUNTY
6000000000TAX_BRACKET_7_PERCENTAGETAX_BRACKET_8_TOTAL_BOUNTY
7000000000TAX_BRACKET_8_PERCENTAGE70TAX_BRACKET_9_TOTAL_BOUNTY
8000000000TAX_BRACKET_9_PERCENTAGETAX_BRACKET_10_TOTAL_BOUNTY
9000000000TAX_BRACKET_10_PERCENTAGETAX_BRACKET_11_TOTAL_BOUNTY10000000000TAX_BRACKET_11_PERCENTAGETAX_CREW_CHEST_PERCENTAGEPLUNDER_MIN_INACTIVE_HOURSPLUNDER_MAX_INACTIVE_HOURSPLUNDER_IMMUNITY_DURATIONPLUNDER_COOLDOWN_DURATIONPLUNDER_REPAY_MULTIPLIERIMPEL_DOWN_BAIL_PER_MINUTE100000AUTO_DELETE_DURATION_VALUESz1|2|5|15|30|60|120|180|360(]  r   sysdistutils.utilr   dotenvr   	constantsr+   r   lenargvpathisfiler   r<   r=   r?   r@   rA   rB   rC   rD   rF   rG   rH   rI   rJ   rK   rL   rM   rO   rP   rQ   rR   rS   rU   rV   rX   rY   r[   r\   r]   r_   ra   rc   re   rf   rg   rh   rj   rl   rm   rn   ro   rp   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r	  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r$  r%  r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  r6  r7  r9  r:  r<  r>  r@  rB  rC  rE  rF  rG  rH  rI  rJ  rK  rL  rN  rO  rP  rR  rS  rT  rU  rW  rX  rY  rZ  r\  r]  r^  r_  r`  ra  rb  rc  r   r,   rd  re  rf  CREW_NAME_MAX_LENGTHri  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  ry  r{  r|  r}  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r:   r   r   <module>r     s#   				 



 $ $ $ $ $ $          U U U U U U U Up 3sx==17>>#(1+&& JiHCHQKHHHIIIKKMMM K$$	&;'AQXYYY 	X		{>** 
X		;z"" [^444K6:::	 +i
 
 
+i
 
 
+i
 
 
+i
 
 k-((-WEEE (K(CSZ[[[ ;1DDD ([)EU\]]] K 32FFF ;z555O$???(3+8) ) ) %  K 3$GGG k-{CCC+/00 $$;K_```  [!5Ecddd  ![!5DIII  (3{*$( ( ( $ &1[(& & & " #.+%T# # #  "k"7vNNN ;1EEE "{#9MMM K 3$GGG ([)EU_``` )k*GWbccc   K 3$GGG ;1EEE  -WEEE[D999
 [!5YOOO #$;7SSS 'K(CSXYYY )k*GW\]]] ;1HHH $%=VTTT  $$;>ZZZ  +,K[a b b b $/K'w% % % ! *5,G* * * &
 $$;=YYY  +,K[a b b b $/K'w% % % ! *5,G* * * &
 "-$L" " "  *5,F* * * & .9[0. . . * 3>+5W3 3 3 /
  +{"-       (3{*&( ( ( $ ,7;.g, , , ( 1<371 1 1 -
  +{",       (3{*&( ( ( $ ,7;.g, , , ( 1<371 1 1 - )[)EUabbb %0[(& & & " *5,G* * * & /:k1/ / / + "-$L" " "  *5,F* * * & .9[0. . . * 3>+5W3 3 3 /  K 3>RRR 'K(CSYZZZ  +,K[b c c c %0[(& & & " #.+%\# # #  +6+-V+ + + ' /:k1/ / / + 4?;6g4 4 4 0
 )[     &1[(& & & " *5,G* * * & /:k1/ / / + *k!1A    '2k)' ' ' # +6+-W+ + + ' 0;{2'0 0 0 ,
 #.+%]# # #  +6+-V+ + + ' /:k1/ / / + 4?;6g4 4 4 0
 $/;&m$ $ $   ,7;.f, , , ( 0;{2'0 0 0 , 5@K7w5 5 5 1
 1<3>1 1 1 - 9D;69 9 9 5 =HK?w= = = 9 BMDT[B B B > *5,N* * * & 2=4F2 2 2 . 6A[86 6 6 2 ;F+=W; ; ; 7
 ';'AQ^___ #.;&f$ $ $   (3{*'( ( ( $ -8K/w- - - )
 (3{*+( ( ( $ 0;{2&0 0 0 , 4?;6g4 4 4 0 9D;79 9 9 5
 &+&?}]]] "-+%V# # #  '2k)' ' ' # ,7;.g, , , (
 !,#=! ! !  )4+6) ) ) % -8K/w- - - ) 2=4G2 2 2 .
 +6+-^+ + + ' 3>+5V3 3 3 / 7Bk97 7 7 3 <G;>g< < < 8
  K 3=QQQ 'K(CSYZZZ  +,K[b c c c %0[(& & & " -R@@@#$;;WWW  +#6! ! !  %0K'w% % % ! *5,F* * * &
 !,,K[b c c c  ';'AQWXXX  "k"7sKKK  ';'AQTUUU  "-$J" " "  $/;&c$ $ $   "--M]`!a!a!a  +,K[` a a a %0[(& & & " *k*GW[\\\ &;'AQTUUU &1k)' ' ' # '2k)' ' ' # #.+%T# # #  *k*GWZ[[[ )k*GWZ[[[ !,-M]`!a!a!a  +,K[^ _ _ _ ([)EUXYYY  %%=SQQQ *{+IY]^^^  )[)EU_``` &;'AQTUUU  [!5UKKK *5+-T+ + + ' %0K'u% % % ! "-$G" " "   +{+IY]^^^  -YGGG'K(CS]^^^ )k*GWbccc &1k)' ' ' # $/;&d$ $ $   %%=SQQQ "{#9MMM '2{*#( ( ( $ (K(CSWXXX  #{#9NNN /:{2$0 0 0 , *5,D* * * &
 )[)EUYZZZ  ![(K   
 )4+7) ) ) % !,,K[_ ` ` ` %+&?sSSS 'K(CSWXXX %+&?tTTT  +,K[_ ` ` ` *{+IY\]]] #.;&d$ $ $    +{+IY^___ +6;.c, , , ( .9[0. . . * &1[(& & & " !,,K[^ _ _ _ )k!1R     +{"2S       %0K'7X% % % ! "-$4U" " "  "-$4U" " "  -8K/?`- - - ) $/;&6U$ $ $   )[ 0Q    "-$4U" " "   +{"2S       '2k)9Z' ' ' # #.+%5V# # #  $/;&6W$ $ $   "-$4U" " "  '2k)9Z' ' ' # &+-N    )[ 0Q    *5,<]* * * & )[ 0Q    "-$4U" " "  $/;&6W$ $ $   *5,<]* * * & %0K'7X% % % ! "-$4U" " "   +{"2S       %,M    (3{*:[( ( ( $ #.+%5V# # #  )[  Y    &+&?sSSS %+&?sSSS (3+4) ) ) % %0K't% % % ! (3{*$( ( ( $ '2k)' ' ' # $/;&d$ $ $   ,7;.d, , , ( 7Bk97 7 7 3 )4+3) ) ) % %0K's% % % ! (3{*#( ( ( $ '2k)' ' ' # $/;&c$ $ $   (3{*$( ( ( $ "-$G" " "  ,7;.d, , , (
 ';'AQZ[[[ &1k)' ' ' #
 ';'AQWXXX *{+IY_``` *5+-V+ + + '
 &1[(& & & " (3{*$( ( ( $ *5,D* * * & +6+-T+ + + ' +6+-T+ + + ' +6+-T+ + + ' !,,K[_ ` ` ` *{+IY\]]] )4,C* * * & -8K/t- - - ) /:k1/ / / + %0K't% % % ! #.+%T# # # 
 (K::<<!"77+//:K:KK   
 $$;2NNN   K 3;OOO "{#9NNN )k*GW\]]] ;1FFF  +,K[_ ` ` ` %+&?{[[[ ([)EUXYYY (3+4) ) ) % ![!5SIII +6;.c, , , ( ,7;.d, , , ( )[)EUXYYY "-+.O_b"c"c"c &1k)' ' ' # 1<331 1 1 - *k!   
 +6+-T+ + + '
 #.+%T# # #  2=4D2 2 2 . $/;&c$ $ $    +{+IY\]]] *{+IY]^^^ #.;&d$ $ $   -8K/s- - - ) -8K/s- - - ) *5,D* * * &
 %%=ZXXX &;'AQTUUU  %%=ZXXX &;'AQTUUU  "--M]a!b!b!b  +,K[^ _ _ _   +{+IY\]]] &1k)' ' ' # ,7;.e, , , ( (3{*$( ( ( $
 *k*GWZ[[[ 'K(CSWXXX  :E<C: : : 6 0;{2$0 0 0 ,
 2=4C2 2 2 . )4+3) ) ) % )[)EUYZZZ )4,D* * * &
 0;{2&0 0 0 , )[)EUXYYY &;'AQTUUU ([)EU`aaa &;'AQTUUU ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV ([)EUabbb &;'AQUVVV )k!    (K(CSWXXX )k!    (K(CSWXXX 'K(CSWXXX  )[)EUXYYY ([)EUYZZZ 'K(CSWXXX 'K(CSWXXX &;'AQTUUU  )[)EU]^^^  *k!1M     r   