time functions update