updated without GUI