repeat and while and if