def __new__(cls, start, stop, project, id, tags=None, updated_at=None):
    try:
        if (not isinstance(start, arrow.Arrow)):
            start = arrow.get(start)
        if (not isinstance(stop, arrow.Arrow)):
            stop = arrow.get(stop)
        if (updated_at is None):
            updated_at = arrow.utcnow()
        elif (not isinstance(updated_at, arrow.Arrow)):
            updated_at = arrow.get(updated_at)
    except (ValueError, TypeError) as e:
        from .watson import WatsonError
        raise WatsonError('Error converting date: {}'.format(e))
    start = start.to('local')
    stop = stop.to('local')
    if (tags is None):
        tags = []
    return super(Frame, cls).__new__(cls, start, stop, project, id, tags, updated_at)
def __new__(cls, start, stop, project, id, tags=None, updated_at=None):
    try:
        if (not isinstance(start, arrow.Arrow)):
            start = arrow.get(start)
        if (not isinstance(stop, arrow.Arrow)):
            stop = arrow.get(stop)
        if (updated_at is None):
            updated_at = arrow.utcnow()
        elif (not isinstance(updated_at, arrow.Arrow)):
            updated_at = arrow.get(updated_at)
    except (ValueError, TypeError) as e:
        from .watson import WatsonError
        raise WatsonError('Error converting date: {}'.format(e))
    start = start.to('local')
    stop = stop.to('local')
    if (tags is None):
        tags = []
    return super(Frame, cls).__new__(cls, start, stop, project, id, tags, updated_at)