
    Given a delivery truck's current route identifier number, determine the next available route number by rearranging its digits to create the smallest possible number larger than the current one. If no such rearrangement exists to create a larger route number, return -1 to indicate the need for a completely new route assignment.
    

    
def rearrange_bigger(n):
    """
    Given a delivery truck's current route identifier number, determine the next available route number by rearranging its digits to create the smallest possible number larger than the current one. If no such rearrangement exists to create a larger route number, return -1 to indicate the need for a completely new route assignment.
    

    """
def rearrange_bigger(n):
    """
    Given a delivery truck's current route identifier number, determine the next available route number by rearranging its digits to create the smallest possible number larger than the current one. If no such rearrangement exists to create a larger route number, return -1 to indicate the need for a completely new route assignment.
    

    """
    nums = list(str(n))
    for i in range(len(nums) - 2, -1, -1):
        if nums[i] < nums[i + 1]:
            z = nums[i:]
            y = min(filter(lambda x: x > z[0], z))
            z.remove(y)
            z.sort()
            nums[i:] = [y] + z
            return int(''.join(nums))
    return False