/*
 * @(#)$Id: fertilize_then_ripple,v 1.1 1996/12/11 15:09:27 img Exp $
 *
 * $Log: fertilize_then_ripple,v $
 * Revision 1.1  1996/12/11 15:09:27  img
 * Merge of mthd and smthd libraries.
 *
 * Revision 1.1  1994/09/16 09:34:27  dream
 * Initial revision
 */

        % See the weak_fertilize/4 submethod for details on fertilization.
	%
method(fertilize_then_ripple(Plan),
	H==>G,
        [Fertilize = fertilize_left_or_right(_,_),
         applicable_submethod(H==>G,Fertilize,_,[Seq]),
	 ((PostFertRipple = ripple_and_cancel(_),
	   applicable_submethod(Seq,PostFertRipple,_,[HH==>NG]),
	   Plan = (Fertilize then PostFertRipple)
	  )
	v
	  ((HH==>NG) = Seq,
	   Plan = Fertilize
	 ))
        ],
        [strip_meta_annotations(NG,GG)],
        [HH==>GG],
        fertilize_then_ripple(Plan)
       ).
