Gave the proper treatment to complex numbers and special types.