custom time library