Разбил, если материал заинтересует, буду выкладывать продолжение...