text: # -*- coding: utf-8 -*-
  import os
  import telebot
  import time
  import telebot
  import random
  import info
  import threading
  from emoji import emojize
  from telebot import types
  from pymongo import MongoClient
  from emoji import emojize
  
  
  from requests.exceptions import ReadTimeout
  from requests.exceptions import ConnectionError
  
  
  token = os.environ['TELEGRAM_TOKEN']
  bot = telebot.TeleBot(token)
  
  
  
  client1=os.environ['database']
  client=MongoClient(client1)
  db=client.sergeygame
  psw=db.passwords
  
  
  codes=['0']
  i=1
  while i<21:
     codes.append(os.environ['code'+str(i)])
     i+=1
  
  
  tips=['0']
  i=1
  while i<21:
     tips.append(os.environ['tip'+str(i)])
     i+=1
  
  @bot.message_handler(commands=['newpass'])
  def newpass(m):
     if m.from_user.id==m.chat.id:    
        if m.chat.id==60727377 or m.chat.id==441399484:
           x=m.text.split('/newpass ')
           if len(x)==2:
              z=psw.find({})
              no=0
              for ids in z:
                 if ids['password']==x[1]:
                    no=1
              if no==0:
                 h=0
                 z=psw.find({})
                 for idss in z:
                    h+=1
                 psw.insert_one(createpass(x[1]))
                 bot.send_message(m.chat.id, 'Пароль "'+x[1]+'" успешно создан! Всего паролей: '+str(h+1))
              else:
                 bot.send_message(m.chat.id, 'Такой пароль уже существует!')
  
  @bot.message_handler(commands=['code'])
  def codee(m):
     x=m.text.split('/code ')
     if len(x)==2:
       pw=x[1]
       x=psw.find({})
       team=None
       no=0
       for ids in x:
           print('ids')
           if m.from_user.id in ids['ids']:
              team=ids
              no=1
       if no==1:
          
        
        
  @bot.message_handler(commands=['allpass'])
  def allpass(m):
     if m.chat.id==60727377 or m.chat.id==441399484:
        x=psw.find({})
        text='Все пароли:\n'
        for ids in x:
           text+='`'+ids['password']+'`\n'
        bot.send_message(m.chat.id, text, parse_mode='markdown')
                 
                 
  @bot.message_handler(commands=['login'])
  def login(m):
     x=m.text.split('/login ')
     if len(x)==2:
       pw=x[1]
       x=psw.find({})
       team=None
       no=0
       for ids in x:
           print('ids')
           if m.from_user.id in ids['ids']:
              no=1
       if no==0:
           x=psw.find({})
           for idss in x:
             print('ids2')
             if idss['password']==pw:
               team=1
               print('yess')
           if team!=None:
              psw.update_one({'password':pw},{'$push':{'ids':m.from_user.id}})
              bot.send_message(m.chat.id, 'Вы успешно вошли в аккаунт!')
           else:
              bot.send_message(m.chat.id, 'Такого пароля не существует!')
       else:
           bot.send_message(m.chat.id, 'Вы уже состоите в одной команде!')
       
  
  
     
  @bot.message_handler(commands=['alltips'])
  def alltips(m):
     x=psw.find({})
     team=None
     for ids in x:
        if m.from_user.id in ids['ids']:
           team=ids
     if team!=None:
        z=0
        text=''
        for ids in team['tips']:
           z+=1
           text+='('+str(z)+'): '+ids+'\n\n'
        bot.send_message(m.chat.id, text)
           
  @bot.message_handler(commands=['buy'])
  def buyy(m):
     g=psw.find({})
     team=None
     for ids in g:
        if m.from_user.id in ids['ids']:
           team=ids
     if team!=None:
        x=m.text.split('/buy ')
        if len(x)==2:
           try:
             h=int(x[1])
             if h==0:
                 bot.send_message(m.chat.id,'Вы нашли секретную подсказку!')
             else:
              tip=tips[h]
              if tip not in team['tips']:
               if h!=20:
                 cost=5
               else:
                 cost=200         
               if team['points']>=cost:
                 psw.update_one({'password':team['password']},{'$inc':{'points':-cost}})
                 bot.send_message(m.chat.id, tip+'\n\nОставшиеся очки: '+str(team['points']-cost))
                 psw.update_one({'password':team['password']},{'$push':{'tips':tip}})
               else:
                 bot.send_message(m.chat.id, 'Недостаточно очков! Требуется: '+str(cost)+'\nУ вас имеется: '+str(team['points']))
              else:
                 bot.send_message(m.chat.id, 'У вас уже куплена эта подсказка!')
           except:
              bot.send_message(m.chat.id, 'Какая-то ошибка. Скорее всего, номер подсказки указан неверно (всего подсказок: 20)')
     else:
      bot.send_message(m.chat.id, 'Вы не состоите ни в одной команде!')
    
     
              
  @bot.message_handler(commands=['start'])
  def start(m):
   if m.chat.id==m.from_user.id:
     x=psw.find({})
     yes=0
     for ids in x:
        if m.from_user.id in ids['ids']:
           yes=1
     if yes==0:
        bot.send_message(m.chat.id,'Для авторизации введите следующий текст:\n'+
                         '/login *пароль*\nГде *пароль* - выданный вашей команде пароль.')
    
                               
                               
  def createpass(p):
     return {'password':p,
            'ids':[],
            'points':0,
            'tips':[]
            } 
  
  helplist={
     1:'',
     2:'',
     3:'',
     4:'',
     5:''
     }
                               
                               
  
  if True:
     print('7777')
     bot.polling(none_stop=True,timeout=600)
  