working variant before making some major changings