function __construct(HIPAY_MAPI_PaymentParams $paymentParams, HIPAY_MAPI_Order $firstOrder, HIPAY_MAPI_Installment $firstInstallment, HIPAY_MAPI_Order $nextOrder, HIPAY_MAPI_Installment $nextInstallment)
 {
     if ($firstInstallment->getFirst() === $nextInstallment->getFirst() || !$firstInstallment->getFirst()) {
         throw new Exception('You must define a installment object for the first payment and next payments');
     }
     $firstInstallment->setDelayTS();
     $nextInstallment->setDelayTS($firstInstallment->getDelayTS());
     try {
         parent::__construct($paymentParams, array($firstOrder, $nextOrder), array($firstInstallment, $nextInstallment));
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
     }
 }
 function __construct(HIPAY_MAPI_PaymentParams $paymentParams, HIPAY_MAPI_Order $firstOrder, HIPAY_MAPI_Installment $firstInstallment, HIPAY_MAPI_Order $nextOrder, HIPAY_MAPI_Installment $nextInstallment)
 {
     if ($firstInstallment->getFirst() === $nextInstallment->getFirst() || !$firstInstallment->getFirst()) {
         throw new Exception('Vous devez définir un objet installment pour le premier et les paiements suivants');
     }
     $firstInstallment->setDelayTS();
     $nextInstallment->setDelayTS($firstInstallment->getDelayTS());
     try {
         parent::__construct($paymentParams, array($firstOrder, $nextOrder), array($firstInstallment, $nextInstallment));
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
     }
 }