Modified to use from 'setInterval' to 'setTimeout'