// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // If canonicalization uses deep structural hashing without memoizing, this // will exhibit superlinear time. const list1_0 = [null, null]; const list1_1 = [list1_0, list1_0]; const list1_2 = [list1_1, list1_1]; const list1_3 = [list1_2, list1_2]; const list1_4 = [list1_3, list1_3]; const list1_5 = [list1_4, list1_4]; const list1_6 = [list1_5, list1_5]; const list1_7 = [list1_6, list1_6]; const list1_8 = [list1_7, list1_7]; const list1_9 = [list1_8, list1_8]; const list1_10 = [list1_9, list1_9]; const list1_11 = [list1_10, list1_10]; const list1_12 = [list1_11, list1_11]; const list1_13 = [list1_12, list1_12]; const list1_14 = [list1_13, list1_13]; const list1_15 = [list1_14, list1_14]; const list1_16 = [list1_15, list1_15]; const list1_17 = [list1_16, list1_16]; const list1_18 = [list1_17, list1_17]; const list1_19 = [list1_18, list1_18]; const list1_20 = [list1_19, list1_19]; const list1_21 = [list1_20, list1_20]; const list1_22 = [list1_21, list1_21]; const list1_23 = [list1_22, list1_22]; const list1_24 = [list1_23, list1_23]; const list1_25 = [list1_24, list1_24]; const list1_26 = [list1_25, list1_25]; const list1_27 = [list1_26, list1_26]; const list1_28 = [list1_27, list1_27]; const list1_29 = [list1_28, list1_28]; const list1_30 = [list1_29, list1_29]; const list1_31 = [list1_30, list1_30]; const list1_32 = [list1_31, list1_31]; const list1_33 = [list1_32, list1_32]; const list1_34 = [list1_33, list1_33]; const list1_35 = [list1_34, list1_34]; const list1_36 = [list1_35, list1_35]; const list1_37 = [list1_36, list1_36]; const list1_38 = [list1_37, list1_37]; const list1_39 = [list1_38, list1_38]; const list1_40 = [list1_39, list1_39]; const list1_41 = [list1_40, list1_40]; const list1_42 = [list1_41, list1_41]; const list1_43 = [list1_42, list1_42]; const list1_44 = [list1_43, list1_43]; const list1_45 = [list1_44, list1_44]; const list1_46 = [list1_45, list1_45]; const list1_47 = [list1_46, list1_46]; const list1_48 = [list1_47, list1_47]; const list1_49 = [list1_48, list1_48]; const list1_50 = [list1_49, list1_49]; const list1_51 = [list1_50, list1_50]; const list1_52 = [list1_51, list1_51]; const list1_53 = [list1_52, list1_52]; const list1_54 = [list1_53, list1_53]; const list1_55 = [list1_54, list1_54]; const list1_56 = [list1_55, list1_55]; const list1_57 = [list1_56, list1_56]; const list1_58 = [list1_57, list1_57]; const list1_59 = [list1_58, list1_58]; const list1_60 = [list1_59, list1_59]; const list1_61 = [list1_60, list1_60]; const list1_62 = [list1_61, list1_61]; const list1_63 = [list1_62, list1_62]; const list1_64 = [list1_63, list1_63]; const list1_65 = [list1_64, list1_64]; const list1_66 = [list1_65, list1_65]; const list1_67 = [list1_66, list1_66]; const list1_68 = [list1_67, list1_67]; const list1_69 = [list1_68, list1_68]; const list1_70 = [list1_69, list1_69]; const list1_71 = [list1_70, list1_70]; const list1_72 = [list1_71, list1_71]; const list1_73 = [list1_72, list1_72]; const list1_74 = [list1_73, list1_73]; const list1_75 = [list1_74, list1_74]; const list1_76 = [list1_75, list1_75]; const list1_77 = [list1_76, list1_76]; const list1_78 = [list1_77, list1_77]; const list1_79 = [list1_78, list1_78]; const list1_80 = [list1_79, list1_79]; const list1_81 = [list1_80, list1_80]; const list1_82 = [list1_81, list1_81]; const list1_83 = [list1_82, list1_82]; const list1_84 = [list1_83, list1_83]; const list1_85 = [list1_84, list1_84]; const list1_86 = [list1_85, list1_85]; const list1_87 = [list1_86, list1_86]; const list1_88 = [list1_87, list1_87]; const list1_89 = [list1_88, list1_88]; const list1_90 = [list1_89, list1_89]; const list1_91 = [list1_90, list1_90]; const list1_92 = [list1_91, list1_91]; const list1_93 = [list1_92, list1_92]; const list1_94 = [list1_93, list1_93]; const list1_95 = [list1_94, list1_94]; const list1_96 = [list1_95, list1_95]; const list1_97 = [list1_96, list1_96]; const list1_98 = [list1_97, list1_97]; const list1_99 = [list1_98, list1_98]; const list2_0 = [null, null]; const list2_1 = [list2_0, list2_0]; const list2_2 = [list2_1, list2_1]; const list2_3 = [list2_2, list2_2]; const list2_4 = [list2_3, list2_3]; const list2_5 = [list2_4, list2_4]; const list2_6 = [list2_5, list2_5]; const list2_7 = [list2_6, list2_6]; const list2_8 = [list2_7, list2_7]; const list2_9 = [list2_8, list2_8]; const list2_10 = [list2_9, list2_9]; const list2_11 = [list2_10, list2_10]; const list2_12 = [list2_11, list2_11]; const list2_13 = [list2_12, list2_12]; const list2_14 = [list2_13, list2_13]; const list2_15 = [list2_14, list2_14]; const list2_16 = [list2_15, list2_15]; const list2_17 = [list2_16, list2_16]; const list2_18 = [list2_17, list2_17]; const list2_19 = [list2_18, list2_18]; const list2_20 = [list2_19, list2_19]; const list2_21 = [list2_20, list2_20]; const list2_22 = [list2_21, list2_21]; const list2_23 = [list2_22, list2_22]; const list2_24 = [list2_23, list2_23]; const list2_25 = [list2_24, list2_24]; const list2_26 = [list2_25, list2_25]; const list2_27 = [list2_26, list2_26]; const list2_28 = [list2_27, list2_27]; const list2_29 = [list2_28, list2_28]; const list2_30 = [list2_29, list2_29]; const list2_31 = [list2_30, list2_30]; const list2_32 = [list2_31, list2_31]; const list2_33 = [list2_32, list2_32]; const list2_34 = [list2_33, list2_33]; const list2_35 = [list2_34, list2_34]; const list2_36 = [list2_35, list2_35]; const list2_37 = [list2_36, list2_36]; const list2_38 = [list2_37, list2_37]; const list2_39 = [list2_38, list2_38]; const list2_40 = [list2_39, list2_39]; const list2_41 = [list2_40, list2_40]; const list2_42 = [list2_41, list2_41]; const list2_43 = [list2_42, list2_42]; const list2_44 = [list2_43, list2_43]; const list2_45 = [list2_44, list2_44]; const list2_46 = [list2_45, list2_45]; const list2_47 = [list2_46, list2_46]; const list2_48 = [list2_47, list2_47]; const list2_49 = [list2_48, list2_48]; const list2_50 = [list2_49, list2_49]; const list2_51 = [list2_50, list2_50]; const list2_52 = [list2_51, list2_51]; const list2_53 = [list2_52, list2_52]; const list2_54 = [list2_53, list2_53]; const list2_55 = [list2_54, list2_54]; const list2_56 = [list2_55, list2_55]; const list2_57 = [list2_56, list2_56]; const list2_58 = [list2_57, list2_57]; const list2_59 = [list2_58, list2_58]; const list2_60 = [list2_59, list2_59]; const list2_61 = [list2_60, list2_60]; const list2_62 = [list2_61, list2_61]; const list2_63 = [list2_62, list2_62]; const list2_64 = [list2_63, list2_63]; const list2_65 = [list2_64, list2_64]; const list2_66 = [list2_65, list2_65]; const list2_67 = [list2_66, list2_66]; const list2_68 = [list2_67, list2_67]; const list2_69 = [list2_68, list2_68]; const list2_70 = [list2_69, list2_69]; const list2_71 = [list2_70, list2_70]; const list2_72 = [list2_71, list2_71]; const list2_73 = [list2_72, list2_72]; const list2_74 = [list2_73, list2_73]; const list2_75 = [list2_74, list2_74]; const list2_76 = [list2_75, list2_75]; const list2_77 = [list2_76, list2_76]; const list2_78 = [list2_77, list2_77]; const list2_79 = [list2_78, list2_78]; const list2_80 = [list2_79, list2_79]; const list2_81 = [list2_80, list2_80]; const list2_82 = [list2_81, list2_81]; const list2_83 = [list2_82, list2_82]; const list2_84 = [list2_83, list2_83]; const list2_85 = [list2_84, list2_84]; const list2_86 = [list2_85, list2_85]; const list2_87 = [list2_86, list2_86]; const list2_88 = [list2_87, list2_87]; const list2_89 = [list2_88, list2_88]; const list2_90 = [list2_89, list2_89]; const list2_91 = [list2_90, list2_90]; const list2_92 = [list2_91, list2_91]; const list2_93 = [list2_92, list2_92]; const list2_94 = [list2_93, list2_93]; const list2_95 = [list2_94, list2_94]; const list2_96 = [list2_95, list2_95]; const list2_97 = [list2_96, list2_96]; const list2_98 = [list2_97, list2_97]; const list2_99 = [list2_98, list2_98]; confuse(x) { try { throw x; } catch (e) { return e; } } main() { if (!identical(confuse(list1_99), confuse(list2_99))) { throw new Exception("list1_99 !== list2_99"); } }