// This file is automatically generated by DemeterJ. EqualVisitor { {{ private java.util.Stack history = new java.util.Stack(); public EqualVisitor(Object obj) { history.push(obj); } }} before -> Blackboard, players, Player_List {{ if (is_equal) { Blackboard obj = (Blackboard) history.peek(); Object temp1 = obj.get_players(); if(temp1==null) { is_equal = false; return; } history.push(temp1); } }} after -> Blackboard, players, Player_List {{ if (is_equal) history.pop(); }} before -> Blackboard, store, Store {{ if (is_equal) { Blackboard obj = (Blackboard) history.peek(); Object temp2 = obj.get_store(); if(temp2==null) { is_equal = false; return; } history.push(temp2); } }} after -> Blackboard, store, Store {{ if (is_equal) history.pop(); }} before -> Blackboard, transactions, Transaction_List {{ if (is_equal) { Blackboard obj = (Blackboard) history.peek(); Object temp3 = obj.get_transactions(); if(temp3==null) { is_equal = false; return; } history.push(temp3); } }} after -> Blackboard, transactions, Transaction_List {{ if (is_equal) history.pop(); }} before -> Blackboard, history, History {{ if (is_equal) { Blackboard obj = (Blackboard) history.peek(); Object temp4 = obj.get_history(); if(temp4==null) { is_equal = false; return; } history.push(temp4); } }} after -> Blackboard, history, History {{ if (is_equal) history.pop(); }} before Blackboard {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Player, name, PlayerName {{ if (is_equal) { Player obj = (Player) history.peek(); Object temp5 = obj.get_name(); if(temp5==null) { is_equal = false; return; } history.push(temp5); } }} after -> Player, name, PlayerName {{ if (is_equal) history.pop(); }} before -> Player, account, Money {{ if (is_equal) { Player obj = (Player) history.peek(); Object temp6 = obj.get_account(); if(temp6==null) { is_equal = false; return; } history.push(temp6); } }} after -> Player, account, Money {{ if (is_equal) history.pop(); }} before -> Player, publickey, PublicKey {{ if (is_equal) { Player obj = (Player) history.peek(); Object temp7 = obj.get_publickey(); if(temp7==null) { is_equal = false; return; } history.push(temp7); } }} after -> Player, publickey, PublicKey {{ if (is_equal) history.pop(); }} before Player {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_turn() == ((Player) obj).get_turn(); }} before PlayerName {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp8 = host.get_v(); Object temp9 = ((PlayerName) obj).get_v(); if(temp8 == null && temp9 == null) {} else if(temp8 == null || temp9 == null || !temp8.equals(temp9)) { is_equal = false; return; } }} before PublicKey {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> History, transaction_elist, Transaction_EList {{ if (is_equal) { History obj = (History) history.peek(); Object temp10 = obj.get_transaction_elist(); if(temp10==null) { is_equal = false; return; } history.push(temp10); } }} after -> History, transaction_elist, Transaction_EList {{ if (is_equal) history.pop(); }} before History {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Store, derivative_elist, Derivative_EList {{ if (is_equal) { Store obj = (Store) history.peek(); Object temp11 = obj.get_derivative_elist(); if(temp11==null) { is_equal = false; return; } history.push(temp11); } }} after -> Store, derivative_elist, Derivative_EList {{ if (is_equal) history.pop(); }} before Store {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Transaction, trans, Trans {{ if (is_equal) { Transaction obj = (Transaction) history.peek(); Object temp12 = obj.get_trans(); if(temp12==null) { is_equal = false; return; } history.push(temp12); } }} after -> Transaction, trans, Trans {{ if (is_equal) history.pop(); }} before Transaction {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Trans, playername, PlayerName {{ if (is_equal) { Trans obj = (Trans) history.peek(); Object temp13 = obj.get_playername(); if(temp13==null) { is_equal = false; return; } history.push(temp13); } }} after -> Trans, playername, PlayerName {{ if (is_equal) history.pop(); }} before -> Trans, derivative, Derivative {{ if (is_equal) { Trans obj = (Trans) history.peek(); Object temp14 = obj.get_derivative(); if(temp14==null) { is_equal = false; return; } history.push(temp14); } }} after -> Trans, derivative, Derivative {{ if (is_equal) history.pop(); }} before -> Trans, digitalsignature, DigitalSignature {{ if (is_equal) { Trans obj = (Trans) history.peek(); Object temp15 = obj.get_digitalsignature(); if(temp15==null) { is_equal = false; return; } history.push(temp15); } }} after -> Trans, digitalsignature, DigitalSignature {{ if (is_equal) history.pop(); }} before Trans {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Buy {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Create {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before DeliverR {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Finish {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before DigitalSignature {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Derivative, name, DerivativeName {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp16 = obj.get_name(); if(temp16==null) { is_equal = false; return; } history.push(temp16); } }} after -> Derivative, name, DerivativeName {{ if (is_equal) history.pop(); }} before -> Derivative, creator, PlayerName {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp17 = obj.get_creator(); if(temp17==null) { is_equal = false; return; } history.push(temp17); } }} after -> Derivative, creator, PlayerName {{ if (is_equal) history.pop(); }} before -> Derivative, price, Money {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp18 = obj.get_price(); if(temp18==null) { is_equal = false; return; } history.push(temp18); } }} after -> Derivative, price, Money {{ if (is_equal) history.pop(); }} before -> Derivative, type, DerivativeType {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp19 = obj.get_type(); if(temp19==null) { is_equal = false; return; } history.push(temp19); } }} after -> Derivative, type, DerivativeType {{ if (is_equal) history.pop(); }} before -> Derivative, boughtBy, PlayerName {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp20 = obj.get_boughtBy(); if(temp20==null) { is_equal = false; return; } history.push(temp20); } }} after -> Derivative, boughtBy, PlayerName {{ if (is_equal) history.pop(); }} before -> Derivative, rawMaterial, RawMaterial {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp21 = obj.get_rawMaterial(); if(temp21==null) { is_equal = false; return; } history.push(temp21); } }} after -> Derivative, rawMaterial, RawMaterial {{ if (is_equal) history.pop(); }} before -> Derivative, finishedProduct, FinishedProduct {{ if (is_equal) { Derivative obj = (Derivative) history.peek(); Object temp22 = obj.get_finishedProduct(); if(temp22==null) { is_equal = false; return; } history.push(temp22); } }} after -> Derivative, finishedProduct, FinishedProduct {{ if (is_equal) history.pop(); }} before Derivative {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> FinishedProduct, assignment, Assignment {{ if (is_equal) { FinishedProduct obj = (FinishedProduct) history.peek(); Object temp23 = obj.get_assignment(); if(temp23==null) { is_equal = false; return; } history.push(temp23); } }} after -> FinishedProduct, assignment, Assignment {{ if (is_equal) history.pop(); }} before -> FinishedProduct, quality, Money {{ if (is_equal) { FinishedProduct obj = (FinishedProduct) history.peek(); Object temp24 = obj.get_quality(); if(temp24==null) { is_equal = false; return; } history.push(temp24); } }} after -> FinishedProduct, quality, Money {{ if (is_equal) history.pop(); }} before FinishedProduct {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before DerivativeName {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp25 = host.get_name(); Object temp26 = ((DerivativeName) obj).get_name(); if(temp25 == null && temp26 == null) {} else if(temp25 == null || temp26 == null || !temp25.equals(temp26)) { is_equal = false; return; } }} before Money {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_price() == ((Money) obj).get_price(); }} before -> DerivativeType, clausetype_list, ClauseType_List {{ if (is_equal) { DerivativeType obj = (DerivativeType) history.peek(); Object temp27 = obj.get_clausetype_list(); if(temp27==null) { is_equal = false; return; } history.push(temp27); } }} after -> DerivativeType, clausetype_list, ClauseType_List {{ if (is_equal) history.pop(); }} before DerivativeType {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> ClauseType, total_literal_num, TotalLiteralNum {{ if (is_equal) { ClauseType obj = (ClauseType) history.peek(); Object temp28 = obj.get_total_literal_num(); if(temp28==null) { is_equal = false; return; } history.push(temp28); } }} after -> ClauseType, total_literal_num, TotalLiteralNum {{ if (is_equal) history.pop(); }} before -> ClauseType, pos_literal_num, PosLiteralNum {{ if (is_equal) { ClauseType obj = (ClauseType) history.peek(); Object temp29 = obj.get_pos_literal_num(); if(temp29==null) { is_equal = false; return; } history.push(temp29); } }} after -> ClauseType, pos_literal_num, PosLiteralNum {{ if (is_equal) history.pop(); }} before ClauseType {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before TotalLiteralNum {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_v() == ((TotalLiteralNum) obj).get_v(); }} before PosLiteralNum {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_v() == ((PosLiteralNum) obj).get_v(); }} before -> RawMaterial, clause_list, Clause_List {{ if (is_equal) { RawMaterial obj = (RawMaterial) history.peek(); Object temp30 = obj.get_clause_list(); if(temp30==null) { is_equal = false; return; } history.push(temp30); } }} after -> RawMaterial, clause_list, Clause_List {{ if (is_equal) history.pop(); }} before RawMaterial {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Clause, weight, Weight {{ if (is_equal) { Clause obj = (Clause) history.peek(); Object temp31 = obj.get_weight(); if(temp31==null) { is_equal = false; return; } history.push(temp31); } }} after -> Clause, weight, Weight {{ if (is_equal) history.pop(); }} before -> Clause, literal_list, Literal_List {{ if (is_equal) { Clause obj = (Clause) history.peek(); Object temp32 = obj.get_literal_list(); if(temp32==null) { is_equal = false; return; } history.push(temp32); } }} after -> Clause, literal_list, Literal_List {{ if (is_equal) history.pop(); }} before Clause {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Weight {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_v() == ((Weight) obj).get_v(); }} before -> Literal, lit, Lit {{ if (is_equal) { Literal obj = (Literal) history.peek(); Object temp33 = obj.get_lit(); if(temp33==null) { is_equal = false; return; } history.push(temp33); } }} after -> Literal, lit, Lit {{ if (is_equal) history.pop(); }} before Literal {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Lit, variable, Variable {{ if (is_equal) { Lit obj = (Lit) history.peek(); Object temp34 = obj.get_variable(); if(temp34==null) { is_equal = false; return; } history.push(temp34); } }} after -> Lit, variable, Variable {{ if (is_equal) history.pop(); }} before Lit {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before PosLiteral {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before NegLiteral {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Variable {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp35 = host.get_v(); Object temp36 = ((Variable) obj).get_v(); if(temp35 == null && temp36 == null) {} else if(temp35 == null || temp36 == null || !temp35.equals(temp36)) { is_equal = false; return; } }} before -> Assignment, literal_list, Literal_List {{ if (is_equal) { Assignment obj = (Assignment) history.peek(); Object temp37 = obj.get_literal_list(); if(temp37==null) { is_equal = false; return; } history.push(temp37); } }} after -> Assignment, literal_list, Literal_List {{ if (is_equal) history.pop(); }} before Assignment {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before Quality {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_v() == ((Quality) obj).get_v(); }} before Main {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp38 = host.get_s(); Object temp39 = ((Main) obj).get_s(); if(temp38 == null && temp39 == null) {} else if(temp38 == null || temp39 == null || !temp38.equals(temp39)) { is_equal = false; return; } }} before CTVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_pos() == ((CTVisitor) obj).get_pos(); is_equal = is_equal && host.get_neg() == ((CTVisitor) obj).get_neg(); }} before PrintVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((PrintVisitor) obj).get_indent(); is_equal = is_equal && host.get_needSpace() == ((PrintVisitor) obj).get_needSpace(); }} before CopyVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; Object temp40 = host.get_copy(); Object temp41 = ((CopyVisitor) obj).get_copy(); if(temp40 == null && temp41 == null) {} else if(temp40 == null || temp41 == null || !temp40.equals(temp41)) { is_equal = false; return; } }} before SubgraphVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_is_equal() == ((SubgraphVisitor) obj).get_is_equal(); }} before EqualVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_is_equal() == ((EqualVisitor) obj).get_is_equal(); }} before DisplayVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((DisplayVisitor) obj).get_indent(); }} before TraceVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; is_equal = is_equal && host.get_indent() == ((TraceVisitor) obj).get_indent(); }} before UniversalVisitor {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Player_List, first, Nonempty_Player_List {{ if (is_equal) { Player_List obj = (Player_List) history.peek(); Object temp42 = obj.get_first(); if(temp42==null) { is_equal = false; return; } history.push(temp42); } }} after -> Player_List, first, Nonempty_Player_List {{ if (is_equal) history.pop(); }} before Player_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Transaction_List, first, Nonempty_Transaction_List {{ if (is_equal) { Transaction_List obj = (Transaction_List) history.peek(); Object temp43 = obj.get_first(); if(temp43==null) { is_equal = false; return; } history.push(temp43); } }} after -> Transaction_List, first, Nonempty_Transaction_List {{ if (is_equal) history.pop(); }} before Transaction_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Transaction_EList, first, Nonempty_Transaction_EList {{ if (is_equal) { Transaction_EList obj = (Transaction_EList) history.peek(); Object temp44 = obj.get_first(); if(temp44==null) { is_equal = false; return; } history.push(temp44); } }} after -> Transaction_EList, first, Nonempty_Transaction_EList {{ if (is_equal) history.pop(); }} before Transaction_EList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Derivative_EList, first, Nonempty_Derivative_EList {{ if (is_equal) { Derivative_EList obj = (Derivative_EList) history.peek(); Object temp45 = obj.get_first(); if(temp45==null) { is_equal = false; return; } history.push(temp45); } }} after -> Derivative_EList, first, Nonempty_Derivative_EList {{ if (is_equal) history.pop(); }} before Derivative_EList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> ClauseType_List, first, Nonempty_ClauseType_List {{ if (is_equal) { ClauseType_List obj = (ClauseType_List) history.peek(); Object temp46 = obj.get_first(); if(temp46==null) { is_equal = false; return; } history.push(temp46); } }} after -> ClauseType_List, first, Nonempty_ClauseType_List {{ if (is_equal) history.pop(); }} before ClauseType_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Clause_List, first, Nonempty_Clause_List {{ if (is_equal) { Clause_List obj = (Clause_List) history.peek(); Object temp47 = obj.get_first(); if(temp47==null) { is_equal = false; return; } history.push(temp47); } }} after -> Clause_List, first, Nonempty_Clause_List {{ if (is_equal) history.pop(); }} before Clause_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Literal_List, first, Nonempty_Literal_List {{ if (is_equal) { Literal_List obj = (Literal_List) history.peek(); Object temp48 = obj.get_first(); if(temp48==null) { is_equal = false; return; } history.push(temp48); } }} after -> Literal_List, first, Nonempty_Literal_List {{ if (is_equal) history.pop(); }} before Literal_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Player_List, it, Player {{ if (is_equal) { Nonempty_Player_List obj = (Nonempty_Player_List) history.peek(); Object temp49 = obj.get_it(); if(temp49==null) { is_equal = false; return; } history.push(temp49); } }} after -> Nonempty_Player_List, it, Player {{ if (is_equal) history.pop(); }} before -> Nonempty_Player_List, next, Nonempty_Player_List {{ if (is_equal) { Nonempty_Player_List obj = (Nonempty_Player_List) history.peek(); Object temp50 = obj.get_next(); if(temp50==null) { is_equal = false; return; } history.push(temp50); } }} after -> Nonempty_Player_List, next, Nonempty_Player_List {{ if (is_equal) history.pop(); }} before Nonempty_Player_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Transaction_List, it, Transaction {{ if (is_equal) { Nonempty_Transaction_List obj = (Nonempty_Transaction_List) history.peek(); Object temp51 = obj.get_it(); if(temp51==null) { is_equal = false; return; } history.push(temp51); } }} after -> Nonempty_Transaction_List, it, Transaction {{ if (is_equal) history.pop(); }} before -> Nonempty_Transaction_List, next, Nonempty_Transaction_List {{ if (is_equal) { Nonempty_Transaction_List obj = (Nonempty_Transaction_List) history.peek(); Object temp52 = obj.get_next(); if(temp52==null) { is_equal = false; return; } history.push(temp52); } }} after -> Nonempty_Transaction_List, next, Nonempty_Transaction_List {{ if (is_equal) history.pop(); }} before Nonempty_Transaction_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Transaction_EList, it, Transaction {{ if (is_equal) { Nonempty_Transaction_EList obj = (Nonempty_Transaction_EList) history.peek(); Object temp53 = obj.get_it(); if(temp53==null) { is_equal = false; return; } history.push(temp53); } }} after -> Nonempty_Transaction_EList, it, Transaction {{ if (is_equal) history.pop(); }} before -> Nonempty_Transaction_EList, next, Nonempty_Transaction_EList {{ if (is_equal) { Nonempty_Transaction_EList obj = (Nonempty_Transaction_EList) history.peek(); Object temp54 = obj.get_next(); if(temp54==null) { is_equal = false; return; } history.push(temp54); } }} after -> Nonempty_Transaction_EList, next, Nonempty_Transaction_EList {{ if (is_equal) history.pop(); }} before Nonempty_Transaction_EList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Derivative_EList, it, Derivative {{ if (is_equal) { Nonempty_Derivative_EList obj = (Nonempty_Derivative_EList) history.peek(); Object temp55 = obj.get_it(); if(temp55==null) { is_equal = false; return; } history.push(temp55); } }} after -> Nonempty_Derivative_EList, it, Derivative {{ if (is_equal) history.pop(); }} before -> Nonempty_Derivative_EList, next, Nonempty_Derivative_EList {{ if (is_equal) { Nonempty_Derivative_EList obj = (Nonempty_Derivative_EList) history.peek(); Object temp56 = obj.get_next(); if(temp56==null) { is_equal = false; return; } history.push(temp56); } }} after -> Nonempty_Derivative_EList, next, Nonempty_Derivative_EList {{ if (is_equal) history.pop(); }} before Nonempty_Derivative_EList {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_ClauseType_List, it, ClauseType {{ if (is_equal) { Nonempty_ClauseType_List obj = (Nonempty_ClauseType_List) history.peek(); Object temp57 = obj.get_it(); if(temp57==null) { is_equal = false; return; } history.push(temp57); } }} after -> Nonempty_ClauseType_List, it, ClauseType {{ if (is_equal) history.pop(); }} before -> Nonempty_ClauseType_List, next, Nonempty_ClauseType_List {{ if (is_equal) { Nonempty_ClauseType_List obj = (Nonempty_ClauseType_List) history.peek(); Object temp58 = obj.get_next(); if(temp58==null) { is_equal = false; return; } history.push(temp58); } }} after -> Nonempty_ClauseType_List, next, Nonempty_ClauseType_List {{ if (is_equal) history.pop(); }} before Nonempty_ClauseType_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Clause_List, it, Clause {{ if (is_equal) { Nonempty_Clause_List obj = (Nonempty_Clause_List) history.peek(); Object temp59 = obj.get_it(); if(temp59==null) { is_equal = false; return; } history.push(temp59); } }} after -> Nonempty_Clause_List, it, Clause {{ if (is_equal) history.pop(); }} before -> Nonempty_Clause_List, next, Nonempty_Clause_List {{ if (is_equal) { Nonempty_Clause_List obj = (Nonempty_Clause_List) history.peek(); Object temp60 = obj.get_next(); if(temp60==null) { is_equal = false; return; } history.push(temp60); } }} after -> Nonempty_Clause_List, next, Nonempty_Clause_List {{ if (is_equal) history.pop(); }} before Nonempty_Clause_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} before -> Nonempty_Literal_List, it, Literal {{ if (is_equal) { Nonempty_Literal_List obj = (Nonempty_Literal_List) history.peek(); Object temp61 = obj.get_it(); if(temp61==null) { is_equal = false; return; } history.push(temp61); } }} after -> Nonempty_Literal_List, it, Literal {{ if (is_equal) history.pop(); }} before -> Nonempty_Literal_List, next, Nonempty_Literal_List {{ if (is_equal) { Nonempty_Literal_List obj = (Nonempty_Literal_List) history.peek(); Object temp62 = obj.get_next(); if(temp62==null) { is_equal = false; return; } history.push(temp62); } }} after -> Nonempty_Literal_List, next, Nonempty_Literal_List {{ if (is_equal) history.pop(); }} before Nonempty_Literal_List {{ Object obj = history.peek(); is_equal = is_equal && obj.getClass().equals(host.getClass()); if(!is_equal) return; }} return boolean {{ is_equal }} }