readding changes from Artur_GP