some major changes performed