| 2007-10-31 15:00:38 яћѕ.gif | ||
| 2007-10-31 15:01:21 зћѕ яћѕ ш яћдђрїхъ | ||
| 2007-10-31 15:03:53 яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif яћѕ.gif | ||
| 2007-10-31 15:05:22 лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл | ||
| 2007-10-31 15:06:08 єшур ёх... ъръ џ чрфхыры...лУУллл | ||
| 2007-10-31 15:07:55 | ||
| 2007-10-31 15:09:28 юєхээћщ яюёђ... | ||
2007-10-31 15:12:38 ![]() ![]() ![]() ![]() | ||
| 2007-10-31 15:13:58 Kryl єшур ёх яюёђђшъ=) | ||
| 2007-10-31 15:14:45 ашїр№ф_Юъфхыы нђю ьрђх№эрџ яхёэџ-эхтшфшьър | ||
| 2007-10-31 15:17:01 лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл | ||
| 2007-10-31 15:18:31 ашїр№ф_Юъфхыы тёх ђтюш л эхтшфшьћ :) | ||
| 2007-10-31 15:18:58 ашїр№ф_Юъфхыы ѓцх тшфшьћ ![]() | ||
2007-10-31 15:23:24 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
aaa.gifaaa.gifaaa.gifabuse.gifabuse.gifabuse.gifahh.gifahh.gifahh.gifalco4.gifalco4.gifalco4.gifangry.gifangry.gifangry.gifarmy2.gifarmy2.gifarmy2.gifart.gifart.gifart.gifass.gifass.gifass.gifbaby.gifbaby.gifbaby.gifbat.gifbat.gifbat.gifbayan.gifbayan.gifbayan.gifbeer.gifbeer.gifbeer.gifbiggrin.gifbiggrin.gifbiggrin.gifbirthday.gifbirthday.gifbirthday.gifboks.gifboks.gifboks.gifboks2.gifboks2.gifboks2.gifbottle.gifbottle.gifbottle.gifbound.gifbound.gifbound.gifbow.gifbow.gifbow.gifcake.gifcake.gifcake.gifchainik.gifchainik.gifchainik.gifchapai.gifchapai.gifchapai.gifcomposer2.gifcomposer2.gifcomposer2.gif confused.gif dance.gif contract.gif dead.gif dinamiy-argon.gif dont.gif druzja.gif duel.gif eek.gif fie.gif figa.gif figa2.gif fingal.gif flag.gif flag-to-hands.gif foo.gif friday.gif frown.gif gigi.gif haha2.gif hey.gif![]() idea2.gif idea3.gif invalid.gif ivan.gif jump.gif jump_girl.gif kill3.gif kill5.gif kiss3.gif kuku.gif lady.gif lady2.gif lady3.gif lamer2.gif lol.gif medic.gif mob.gif moderator.gif moderator2.gif no.gif oh.gif pilot2.gif poklon.gif pom.gif pop2.gif pozdra.gif read.gif rediska.gif rolleyes.gif rupor.gif spy.gif secret.gif shuffle.gif smeh.gif smile.gif smoke.gif smoke20.gif super.gif talk.gif tease2.gif tiho.gif upset.gif wave.gif wc.gif wink.gif work.gif wow2.gif writer.gif xlb.gif | ||
| 2007-10-31 15:23:48 эшѕѓџ ёхсх! | ||
| 2007-10-31 15:24:14 эх яюыѓїшыюёќ..... | ||
2007-10-31 15:24:41
| ||
| 2007-10-31 15:26:19 тюђ §ђю яюёђшъ юђсюсрѕры Р№ёхэры...гтрцѓѕр !!!! | ||
2007-10-31 15:28:34
| ||
| 2007-10-31 15:35:14 ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(r | ||
| 2007-10-31 15:36:09 ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if (($2 == $tget(roles,code,15)) && (%gnumdem != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledem.txt) | return } if (($2 == $tget(roles,code,16)) && (%gnumgho != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolegho.txt) | return } if (($2 == $tget(roles,code,18)) && (%gnumble != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleble.txt) | return } if ($2 == $tget(roles,codemn,3)) { if (%gnummaf == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolemaf.txt) %i = 1 :agmaf if (%i > $tnumrecs(players)) goto endmaf %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 3) { inc %i | goto agmaf } %mes = %mes %tnick $+ , inc %i goto agmaf :endmaf msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,1)) { if (%gnumciv == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatroleciv.txt) %i = 1 :agciv if (%i > $tnumrecs(players)) goto endciv %tnick = $tget(players,name,%i) if ($tget(players,role,%i) != 1) { inc %i | goto agciv } %mes = %mes %tnick $+ , inc %i goto agciv :endciv msg $1 $left(%mes,-1) return } if ($2 == $tget(roles,codemn,14)) { if (%gnumvam == 0) { $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) | return } %mes = $read(mafbot $+ %mesdir $+ checkroleswhatrolevam.txt) %i = 1 :agvam if (%i > $tnumrecs(players)) goto endvam %tnick = $tget(players,name,%i) if ($tget(players,vampire,%i) != 1) { inc %i | goto agvam } %mes = %mes %tnick $+ , inc %i goto agvam :endvam msg $1 $left(%mes,-1) return } %trole = $role($2) if ((%trole == 0) && ($tfind(players,name,$2) != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckciv.txt) | return } if (%trole == 1) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkat.txt) | return } if (%trole == 2) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckmaf.txt) | return } if (%trole == 3) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckman.txt) | return } if (%trole == 4) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdok.txt) | return } if (%trole == 5) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckbom.txt) | return } if (%trole == 6) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckdev.txt) | return } if (%trole == 7) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckadv.txt) | return } if (%trole == 8) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckrep.txt) | return } if (%trole == 9) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckhak.txt) | return } if (%trole == 10) { msg $1 $read(mafbot $+ %mesdir $+ checkroleschecknec.txt) | return } if (%trole == 11) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckkil.txt) | return } if (%trole == 12) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckagn.txt) | return } if (%trole == 16) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckshi.txt) | return } if (%trole == 17) { msg $1 $read(mafbot $+ %mesdir $+ checkrolescheckble.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ otherswrongpar2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatrole $2 by $getnicksysuser($1) } whatpoints { if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 $read(mafbot $+ %mesdir $+ othersshowmoney2.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Whatpoints $2 by $getnicksysuser($1) } execute { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } $2- write mafbotlogsmain.log $asctime(HH:nn:ss dd/mm/yy) - Execute by $getnicksysuser($1) - $2- } sayfromadmin { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),say) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg %curchannel %ncol $+ $getnicksysuser($1) $+ : $+ %ccol $2- write mafbotlogssay.log $asctime(HH:nn:ss dd/mm/yy) - Say by $getnicksysuser($1) - $2- } userhostcommand { if (%isuserhost == 1) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),userhost) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if ($2 !ison %curchannel) { msg $1 %ncol $+ $2 %rcol $+ юђёѓђёђтѓхђ эр ърэрых! | return } if (%addressesmode != 1) { msg $1 %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $2 %rcol $+ - §ђю $+ %ncol $gettok($address($2,2),2,64) | return } %isuserhost = 1 %userhostuser = $1 %userhostnick = $2 whois $2 timeruserhost -o 1 10 userhosttimeout write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Userhost $2 by $getnicksysuser($1) } getuserhost { if (%isuserhost == 0) return if ($1 != %userhostnick) return msg %userhostuser %rcol $+ ахрыќэћщ рф№хё яюыќчютрђхыџ $+ %ncol $1 %rcol $+ - §ђю $+ %ncol $right($left($2,-1),-1) timeruserhost off %isuserhost = 0 } userhosttimeout { %isuserhost = 0 } getlastclearlogs { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),logadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч їшёђър ыюуют mIRC я№юшчтюфшырёќ: %ncol $+ $asctime($read(mafbotlastclearlogs.txt,t,1),HH:nn:ss dd/mm/yy) } getlastbackup { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } msg $1 %rcol $+ Т яюёыхфэшщ №рч №хчх№тэюх р№ѕштш№ютрэшх ёђрђшёђшъш ш эрёђ№юхъ я№юшчтюфшыюёќ: %ncol $+ $asctime($read(mafbotlastbackup.txt,t,1),HH:nn:ss dd/mm/yy) } showskins { var %i var %tskin var %mes if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } %i = 1 %mes = %ccol $+ Эрщфхээћх ёъшэћ: :next %tskin = $getfilename($findfile(mafbotiniskins,*.ini,%i)) if (%tskin == $null) goto end %mes = %mes %ncol $+ %tskin $+ %rcol $+ , inc %i goto next :end msg $1 $left(%mes,-1) ;Юёђрэют сюђр їхыютхъюь ё эшъюь $1 haltbot1 { if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),halt) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } timer1 off %ishalted = 1 %ispaused = 0 endgame msg %curchannel $read(mafbot $+ %mesdir $+ othershaltbot1.txt) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Halt game by $getnicksysuser($1) } ;ахушёђ№рішџ шу№юър рфьшэшёђ№рђю№юь ърэрыр reguser { var %tnick var %tuser var %tclone if (%isgame == 0) { mode %curchannel -v $1 | return } if (($isnickplayer($1) == 1) && ($isexited($1) == 0) && ($iskicked($1) == 0)) return if ((($getnicksysuser($2) == 0) || ($isnicksyshaspriv($getnicksysuser($2),reguser) == 0)) && ($2 != $me)) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) return } %tuser = $getnicksysuser($1) if (%tuser == 0) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $1 $read(mafbot $+ %mesdir $+ othersownermustidentify.txt) return } if ($gisnickplayer($1) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotrepeatreg.txt) return } if ($dll(mafbotmafbot.dll,getcuraddress,%tuser) == $null) { if ($1 isvoice %curchannel) mode %curchannel -v $1 return } if ($1 ison %curchannel) { if ($dll(mafbotmafbot.dll,getset,%tuser blocked) == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersuserblocked.txt) return } %tclone = $checkforclones($1) if (%tclone == 1) { if ($1 isvoice %curchannel) mode %curchannel -v $1 msg $2 $read(mafbot $+ %mesdir $+ othersclonedetected.txt) return } tadd players tmod players name $tnumrecs(players) $1 tmod players numrej $tnumrecs(players) %numrej tmod players role $tnumrecs(players) 1 tmod players address $tnumrecs(players) $dll(mafbotmafbot.dll,getcuraddress,%tuser) tmod players uname $tnumrecs(players) %tuser tmod players ofnote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players lognote $tnumrecs(players) $read(mafbot $+ %mesdir $+ othersnotchecked.txt) tmod players victime $tnumrecs(players) $null tmod players phrase $tnumrecs(players) $null inc %numciv inc %numplayers inc %numciv2 if ($1 !isvoice %curchannel) mode %curchannel +v $1 if ($1 isop %curchannel && $1 != $me) mode %curchannel -o $1 if ($1 ishop %curchannel && $1 != $me) mode %curchannel -h $1 msg %curchannel $read(mafbot $+ %mesdir $+ othersreguser.txt) write mafbotlogsadmin.log $asctime(HH:nn:ss dd/mm/yy) - Reguser $1 by $getnicksysuser($2) } } ;Тћс№юё їхыютхъюь $1 їхыютхър $2 шч шу№ћ ё ъюььхэђюь $3 kickfromgameby { if (($isnickplayer($2) == 0) || ($iskicked($2) == 1) || ($isexited($2) == 1) || (%isgame == 0) || ($2 == $null)) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),k) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | if ($2 !isvoice %curchannel) mode %curchannel +v $2 | return } if ((($getnicksysuser($2) != 0) && ($isnicksyshaspriv($getnicksysuser($2),protect) == 1) && ($isnicksyshaspriv($getnicksysuser($1),protect) == 0)) || ($2 == $me)) { msg $1 $read(mafbot $+ %mesdir $+ othersuserprotected.txt) if ($2 !isvoice %curchannel) mode %curchannel +v $2 return } msg %curchannel $read(mafbot $+ %mesdir $+ otherskickfromgame.txt) kamikadze $2 write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Kick from game $2 by $getnicksysuser($1) with comment: $3- } setpaused { var %maintimernum var %i if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused != 0) return %i = 1 :next if (%i > $timer(0)) { msg %curchannel $read(mafbot $+ %mesdir $+ otherscannotpause.txt) | return } if ($timer(%i) == 1) { %maintimernum = %i | goto end } inc %i goto next :end remove mafbotpausecom.txt remove mafbotpausesecs.txt write -l1 mafbotpausecom.txt $timer(%maintimernum).com | write -l1 mafbotpausesecs.txt $timer(%maintimernum).secs timer1 off %ispaused = 1 if (%isconnected == 1) { if ($1 != $null) msg %curchannel $read(mafbot $+ %mesdir $+ othersgamepaused.txt) else msg %curchannel $read(mafbot $+ %mesdir $+ othersautopause.txt) } write -l1 mafbotpausepausetime.txt $ctime if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - $asctime(HH:nn:ss dd/mm/yy) - Pause by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autopause } setunpaused { if ((($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),pause) == 0)) && ($1 != $null)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (%ispaused == 0) return else afterpause if ($1 != $null) write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Resume by $getnicksysuser($1) else write mafbotlogshalfop.log $asctime(HH:nn:ss dd/mm/yy) - Autoresume } whatrole { var %mes var %tnick var %i var %trole if ((%isgame == 0) || (%isconf == 1) || (%isreg == 1)) return if ($2 == $null) return if (($getnicksysuser($1) == 0) || ($isnicksyshaspriv($getnicksysuser($1),botadmin) == 0)) { msg $1 $read(mafbot $+ %mesdir $+ otherscannotusecommand.txt) | return } if (($2 == $tget(roles,code,2)) && (%gnumkat != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekat.txt) | return } if (($2 == $tget(roles,code,4)) && (%gnumman != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleman.txt) | return } if (($2 == $tget(roles,code,5)) && (%gnumdok != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledok.txt) | return } if (($2 == $tget(roles,code,6)) && (%gnumbom != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolebom.txt) | return } if (($2 == $tget(roles,code,7)) && (%gnumdev != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroledev.txt) | return } if (($2 == $tget(roles,code,8)) && (%gnumadv != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleadv.txt) | return } if (($2 == $tget(roles,code,9)) && (%gnumrep != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolerep.txt) | return } if (($2 == $tget(roles,code,10)) && (%gnumhak != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolehak.txt) | return } if (($2 == $tget(roles,code,11)) && (%gnumnec != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolenec.txt) | return } if (($2 == $tget(roles,code,12)) && (%gnumkil != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatrolekil.txt) | return } if (($2 == $tget(roles,code,13)) && (%gnumagn != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleagn.txt) | return } if (($2 == $tget(roles,code,17)) && (%gnumshi != 0)) { msg $1 $read(mafbot $+ %mesdir $+ checkroleswhatroleshi.txt) | return } if (($2 == $tget(r | ||
2007-10-31 15:37:09 ![]() | ||
| 2007-10-31 15:39:51 ря | ||
| 2007-10-31 15:40:11 ря | ||
| 2007-10-31 15:40:28 | ||
| 1 | 2 | 3 | 4 |