def func1():
	global a2
	global b
	i = 0
	for x, y in map(None, a2[0:2], a2):
		i = i + 1
		if x == y:
			continue
		else:
			for newLine in b:
				a2.insert(i-1, newLine)
				i = i+1
			break
	return a2
	
	
def func2():
	global a2
	global b
	a2 = a2[:2] + b + a2[2:]
	return a2
	
def func3():
	global a2
	global b
	a2[2:2] = b
	return a2

def func4():
	global a2
	global b
	a2.reverse()
	b.reverse()
	for i in b:
		a2.insert(-2, i)
	return a2
	
import timeit

a2 = ['a1' for _ in range(100000)]
b = ['a2' for i in range(1000)]

print timeit.timeit(func1,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func2,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func3,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func4,number=10,setup = 'from __main__ import a2,b')