added millisecond delay parameter