Also remove the usage of System.currentTimeMillis() completely here to make it more consistent and correct