The copy/paste will make this code a nightmare to maintain.  Can you clean this up?