function5 :: Member
          -> [VarIn]
          -> ArgOut a1 -> ArgOut a2 -> ArgOut a3
          -> ArgOut a4 -> ArgOut a5
          -> IDispatch i
          -> IO (a1,a2,a3,a4,a5)
function5 member args argout1 argout2 argout3 
                      argout4 argout5 obj = do
   dispid <- obj # getMemberID member
   catchMethError member $
     functionID5 dispid args argout1 argout2 argout3 argout4 argout5 obj
function5 :: Member
          -> [VarIn]
          -> ArgOut a1 -> ArgOut a2 -> ArgOut a3
          -> ArgOut a4 -> ArgOut a5
          -> IDispatch i
          -> IO (a1,a2,a3,a4,a5)
function5 member args argout1 argout2 argout3 
                      argout4 argout5 obj = do
   dispid <- obj # getMemberID member
   catchMethError member $
     functionID5 dispid args argout1 argout2 argout3 argout4 argout5 obj
function5 member args argout1 argout2 argout3 
                      argout4 argout5 obj = do
   dispid <- obj # getMemberID member
   catchMethError member $
     functionID5 dispid args argout1 argout2 argout3 argout4 argout5 obj