@staticmethod
def PrecTime(sec, microseconds=None, string=False):
    """
        >param sec: Enter the n. of seconds
        >param microseconds: optional, enter the . of microseconds
        >param string: optional, if 'string' is true, the func return a string,
        in the other case, it return a tuple.
        >return: tuple or string of <hour, minute, seconds, milliseconds, microseconds>
        """
    sec = int(sec)
    rest = sec % 3600
    sec -= rest
    hours = sec / 3600
    sec = rest
    rest = sec % 60
    sec -= rest
    minutes = sec / 60
    sec = rest
    seconds = rest
    if not microseconds:
        milliseconds = 0
        microseconds = 0
    else:
        rest = microseconds % 1000
        microseconds -= rest
        milliseconds = float(microseconds) / 1000
        microseconds = rest
    if not string:
        return int(hours), int(minutes), int(seconds), int(milliseconds), int(
            microseconds)
    else:
        return (
            f'{int(hours)}:{int(minutes)}:{int(seconds)}.{int(milliseconds)}')
