def valuefy(strings, type_cast=None):
    """Return a list of value, type casted by type_cast list
    
    Args:
        strings (str): A string with value seperated by '_'
        type_cast (List[types]): A list with type for each elements
    
    Returns:
        List[any]: A list of values typecasted by type_cast array elements.
                   If type_cast is None, all elements are type casted to int.
    """
    vals_string = strings.split('_')
    if type_cast is None:
        type_cast = [int]*len(vals_string)
    assert len(vals_string) == len(type_cast)
    return [t(e) for e, t in zip(vals_string, type_cast)]