def list_insert_list(l, to_insert, index):
    """ This function inserts items from one list into another list at the
        specified index. This function returns a copy; it does not alter the
        original list.


        This function is adapted from: http://stackoverflow.com/questions/7376019/

        Example:

        a_list = [ "I", "rad", "list" ]
        b_list = [ "am", "a" ]
        c_list = list_insert_list(a_list, b_list, 1)

        print( c_list ) # outputs: ['I', 'am', 'a', 'rad', 'list']
    """

    ret = list(l)
    ret[index:index] = list(to_insert)
    return ret