public static function  isCardValid($param) 
	{
		$isValid = true;

        if(isset($param['card'])) {
            $card = $param['card'];

            $isNameValid = CheckoutApi_Client_Validation_GW3::isNameValid($card);

            if (!$isNameValid) {

                $isValid = false;
            }

            $isCardNumberValid = CheckoutApi_Client_Validation_GW3::isCardNumberValid($card);

            if (!$isCardNumberValid && ! isset($param['card']['number'])) {

                $isValid = false;
            }

            $isValidMonth = CheckoutApi_Client_Validation_GW3::isMonthValid($card);


            if (!$isValidMonth && !isset($param['card']['expiryMonth'])) {
                $isValid = false;
            }

            $isValidYear = CheckoutApi_Client_Validation_GW3::isValidYear($card);

            if (!$isValidYear && !isset($param['card']['expiryYear'])) {
                $isValid = false;
            }

            $isValidCvv = CheckoutApi_Client_Validation_GW3::isValidCvv($card);

            if (!$isValidCvv && !isset($param['card']['cvv'])) {
                $isValid = false;
            }

            return $isValid;
        }
        return true;

	}