• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "VariableDeclaration",
6      "declarations": [
7        {
8          "type": "VariableDeclarator",
9          "id": {
10            "type": "ObjectPattern",
11            "properties": [
12              {
13                "type": "Property",
14                "method": false,
15                "shorthand": true,
16                "computed": false,
17                "key": {
18                  "type": "Identifier",
19                  "name": "var1",
20                  "decorators": [],
21                  "loc": {
22                    "start": {
23                      "line": 17,
24                      "column": 7,
25                      "program": "objectDestructuring.ts"
26                    },
27                    "end": {
28                      "line": 17,
29                      "column": 11,
30                      "program": "objectDestructuring.ts"
31                    }
32                  }
33                },
34                "value": {
35                  "type": "Identifier",
36                  "name": "var1",
37                  "decorators": [],
38                  "loc": {
39                    "start": {
40                      "line": 17,
41                      "column": 7,
42                      "program": "objectDestructuring.ts"
43                    },
44                    "end": {
45                      "line": 17,
46                      "column": 11,
47                      "program": "objectDestructuring.ts"
48                    }
49                  }
50                },
51                "kind": "init",
52                "loc": {
53                  "start": {
54                    "line": 17,
55                    "column": 7,
56                    "program": "objectDestructuring.ts"
57                  },
58                  "end": {
59                    "line": 17,
60                    "column": 11,
61                    "program": "objectDestructuring.ts"
62                  }
63                }
64              },
65              {
66                "type": "Property",
67                "method": false,
68                "shorthand": true,
69                "computed": false,
70                "key": {
71                  "type": "Identifier",
72                  "name": "var2",
73                  "decorators": [],
74                  "loc": {
75                    "start": {
76                      "line": 17,
77                      "column": 13,
78                      "program": "objectDestructuring.ts"
79                    },
80                    "end": {
81                      "line": 17,
82                      "column": 17,
83                      "program": "objectDestructuring.ts"
84                    }
85                  }
86                },
87                "value": {
88                  "type": "Identifier",
89                  "name": "var2",
90                  "decorators": [],
91                  "loc": {
92                    "start": {
93                      "line": 17,
94                      "column": 13,
95                      "program": "objectDestructuring.ts"
96                    },
97                    "end": {
98                      "line": 17,
99                      "column": 17,
100                      "program": "objectDestructuring.ts"
101                    }
102                  }
103                },
104                "kind": "init",
105                "loc": {
106                  "start": {
107                    "line": 17,
108                    "column": 13,
109                    "program": "objectDestructuring.ts"
110                  },
111                  "end": {
112                    "line": 17,
113                    "column": 17,
114                    "program": "objectDestructuring.ts"
115                  }
116                }
117              }
118            ],
119            "loc": {
120              "start": {
121                "line": 17,
122                "column": 5,
123                "program": "objectDestructuring.ts"
124              },
125              "end": {
126                "line": 17,
127                "column": 19,
128                "program": "objectDestructuring.ts"
129              }
130            }
131          },
132          "init": {
133            "type": "ObjectExpression",
134            "properties": [
135              {
136                "type": "Property",
137                "method": false,
138                "shorthand": false,
139                "computed": false,
140                "key": {
141                  "type": "Identifier",
142                  "name": "var1",
143                  "decorators": [],
144                  "loc": {
145                    "start": {
146                      "line": 17,
147                      "column": 24,
148                      "program": "objectDestructuring.ts"
149                    },
150                    "end": {
151                      "line": 17,
152                      "column": 28,
153                      "program": "objectDestructuring.ts"
154                    }
155                  }
156                },
157                "value": {
158                  "type": "NumberLiteral",
159                  "value": 5,
160                  "loc": {
161                    "start": {
162                      "line": 17,
163                      "column": 30,
164                      "program": "objectDestructuring.ts"
165                    },
166                    "end": {
167                      "line": 17,
168                      "column": 31,
169                      "program": "objectDestructuring.ts"
170                    }
171                  }
172                },
173                "kind": "init",
174                "loc": {
175                  "start": {
176                    "line": 17,
177                    "column": 24,
178                    "program": "objectDestructuring.ts"
179                  },
180                  "end": {
181                    "line": 17,
182                    "column": 31,
183                    "program": "objectDestructuring.ts"
184                  }
185                }
186              },
187              {
188                "type": "Property",
189                "method": false,
190                "shorthand": false,
191                "computed": false,
192                "key": {
193                  "type": "Identifier",
194                  "name": "var2",
195                  "decorators": [],
196                  "loc": {
197                    "start": {
198                      "line": 17,
199                      "column": 33,
200                      "program": "objectDestructuring.ts"
201                    },
202                    "end": {
203                      "line": 17,
204                      "column": 37,
205                      "program": "objectDestructuring.ts"
206                    }
207                  }
208                },
209                "value": {
210                  "type": "StringLiteral",
211                  "value": "foo",
212                  "loc": {
213                    "start": {
214                      "line": 17,
215                      "column": 39,
216                      "program": "objectDestructuring.ts"
217                    },
218                    "end": {
219                      "line": 17,
220                      "column": 44,
221                      "program": "objectDestructuring.ts"
222                    }
223                  }
224                },
225                "kind": "init",
226                "loc": {
227                  "start": {
228                    "line": 17,
229                    "column": 33,
230                    "program": "objectDestructuring.ts"
231                  },
232                  "end": {
233                    "line": 17,
234                    "column": 44,
235                    "program": "objectDestructuring.ts"
236                  }
237                }
238              }
239            ],
240            "loc": {
241              "start": {
242                "line": 17,
243                "column": 22,
244                "program": "objectDestructuring.ts"
245              },
246              "end": {
247                "line": 17,
248                "column": 46,
249                "program": "objectDestructuring.ts"
250              }
251            }
252          },
253          "loc": {
254            "start": {
255              "line": 17,
256              "column": 5,
257              "program": "objectDestructuring.ts"
258            },
259            "end": {
260              "line": 17,
261              "column": 46,
262              "program": "objectDestructuring.ts"
263            }
264          }
265        }
266      ],
267      "kind": "var",
268      "loc": {
269        "start": {
270          "line": 17,
271          "column": 1,
272          "program": "objectDestructuring.ts"
273        },
274        "end": {
275          "line": 17,
276          "column": 47,
277          "program": "objectDestructuring.ts"
278        }
279      }
280    },
281    {
282      "type": "ExpressionStatement",
283      "expression": {
284        "type": "AssignmentExpression",
285        "operator": "=",
286        "left": {
287          "type": "Identifier",
288          "name": "var1",
289          "decorators": [],
290          "loc": {
291            "start": {
292              "line": 18,
293              "column": 1,
294              "program": "objectDestructuring.ts"
295            },
296            "end": {
297              "line": 18,
298              "column": 5,
299              "program": "objectDestructuring.ts"
300            }
301          }
302        },
303        "right": {
304          "type": "NumberLiteral",
305          "value": 3,
306          "loc": {
307            "start": {
308              "line": 18,
309              "column": 8,
310              "program": "objectDestructuring.ts"
311            },
312            "end": {
313              "line": 18,
314              "column": 9,
315              "program": "objectDestructuring.ts"
316            }
317          }
318        },
319        "loc": {
320          "start": {
321            "line": 18,
322            "column": 1,
323            "program": "objectDestructuring.ts"
324          },
325          "end": {
326            "line": 18,
327            "column": 9,
328            "program": "objectDestructuring.ts"
329          }
330        }
331      },
332      "loc": {
333        "start": {
334          "line": 18,
335          "column": 1,
336          "program": "objectDestructuring.ts"
337        },
338        "end": {
339          "line": 18,
340          "column": 10,
341          "program": "objectDestructuring.ts"
342        }
343      }
344    },
345    {
346      "type": "ExpressionStatement",
347      "expression": {
348        "type": "AssignmentExpression",
349        "operator": "=",
350        "left": {
351          "type": "Identifier",
352          "name": "var2",
353          "decorators": [],
354          "loc": {
355            "start": {
356              "line": 19,
357              "column": 1,
358              "program": "objectDestructuring.ts"
359            },
360            "end": {
361              "line": 19,
362              "column": 5,
363              "program": "objectDestructuring.ts"
364            }
365          }
366        },
367        "right": {
368          "type": "StringLiteral",
369          "value": "bar",
370          "loc": {
371            "start": {
372              "line": 19,
373              "column": 8,
374              "program": "objectDestructuring.ts"
375            },
376            "end": {
377              "line": 19,
378              "column": 13,
379              "program": "objectDestructuring.ts"
380            }
381          }
382        },
383        "loc": {
384          "start": {
385            "line": 19,
386            "column": 1,
387            "program": "objectDestructuring.ts"
388          },
389          "end": {
390            "line": 19,
391            "column": 13,
392            "program": "objectDestructuring.ts"
393          }
394        }
395      },
396      "loc": {
397        "start": {
398          "line": 19,
399          "column": 1,
400          "program": "objectDestructuring.ts"
401        },
402        "end": {
403          "line": 19,
404          "column": 14,
405          "program": "objectDestructuring.ts"
406        }
407      }
408    },
409    {
410      "type": "VariableDeclaration",
411      "declarations": [
412        {
413          "type": "VariableDeclarator",
414          "id": {
415            "type": "ObjectPattern",
416            "properties": [
417              {
418                "type": "Property",
419                "method": false,
420                "shorthand": false,
421                "computed": false,
422                "key": {
423                  "type": "Identifier",
424                  "name": "prop",
425                  "decorators": [],
426                  "loc": {
427                    "start": {
428                      "line": 21,
429                      "column": 7,
430                      "program": "objectDestructuring.ts"
431                    },
432                    "end": {
433                      "line": 21,
434                      "column": 11,
435                      "program": "objectDestructuring.ts"
436                    }
437                  }
438                },
439                "value": {
440                  "type": "ArrayPattern",
441                  "elements": [
442                    {
443                      "type": "Identifier",
444                      "name": "var3",
445                      "decorators": [],
446                      "loc": {
447                        "start": {
448                          "line": 21,
449                          "column": 14,
450                          "program": "objectDestructuring.ts"
451                        },
452                        "end": {
453                          "line": 21,
454                          "column": 18,
455                          "program": "objectDestructuring.ts"
456                        }
457                      }
458                    },
459                    {
460                      "type": "OmittedExpression",
461                      "loc": {
462                        "start": {
463                          "line": 21,
464                          "column": 20,
465                          "program": "objectDestructuring.ts"
466                        },
467                        "end": {
468                          "line": 21,
469                          "column": 21,
470                          "program": "objectDestructuring.ts"
471                        }
472                      }
473                    },
474                    {
475                      "type": "OmittedExpression",
476                      "loc": {
477                        "start": {
478                          "line": 21,
479                          "column": 22,
480                          "program": "objectDestructuring.ts"
481                        },
482                        "end": {
483                          "line": 21,
484                          "column": 23,
485                          "program": "objectDestructuring.ts"
486                        }
487                      }
488                    },
489                    {
490                      "type": "Identifier",
491                      "name": "var4",
492                      "decorators": [],
493                      "loc": {
494                        "start": {
495                          "line": 21,
496                          "column": 24,
497                          "program": "objectDestructuring.ts"
498                        },
499                        "end": {
500                          "line": 21,
501                          "column": 28,
502                          "program": "objectDestructuring.ts"
503                        }
504                      }
505                    }
506                  ],
507                  "loc": {
508                    "start": {
509                      "line": 21,
510                      "column": 13,
511                      "program": "objectDestructuring.ts"
512                    },
513                    "end": {
514                      "line": 21,
515                      "column": 29,
516                      "program": "objectDestructuring.ts"
517                    }
518                  }
519                },
520                "kind": "init",
521                "loc": {
522                  "start": {
523                    "line": 21,
524                    "column": 7,
525                    "program": "objectDestructuring.ts"
526                  },
527                  "end": {
528                    "line": 21,
529                    "column": 29,
530                    "program": "objectDestructuring.ts"
531                  }
532                }
533              },
534              {
535                "type": "Property",
536                "method": false,
537                "shorthand": true,
538                "computed": false,
539                "key": {
540                  "type": "Identifier",
541                  "name": "var5",
542                  "decorators": [],
543                  "loc": {
544                    "start": {
545                      "line": 21,
546                      "column": 31,
547                      "program": "objectDestructuring.ts"
548                    },
549                    "end": {
550                      "line": 21,
551                      "column": 35,
552                      "program": "objectDestructuring.ts"
553                    }
554                  }
555                },
556                "value": {
557                  "type": "AssignmentPattern",
558                  "left": {
559                    "type": "Identifier",
560                    "name": "var5",
561                    "decorators": [],
562                    "loc": {
563                      "start": {
564                        "line": 21,
565                        "column": 31,
566                        "program": "objectDestructuring.ts"
567                      },
568                      "end": {
569                        "line": 21,
570                        "column": 35,
571                        "program": "objectDestructuring.ts"
572                      }
573                    }
574                  },
575                  "right": {
576                    "type": "BooleanLiteral",
577                    "value": true,
578                    "loc": {
579                      "start": {
580                        "line": 21,
581                        "column": 38,
582                        "program": "objectDestructuring.ts"
583                      },
584                      "end": {
585                        "line": 21,
586                        "column": 42,
587                        "program": "objectDestructuring.ts"
588                      }
589                    }
590                  },
591                  "loc": {
592                    "start": {
593                      "line": 21,
594                      "column": 31,
595                      "program": "objectDestructuring.ts"
596                    },
597                    "end": {
598                      "line": 21,
599                      "column": 42,
600                      "program": "objectDestructuring.ts"
601                    }
602                  }
603                },
604                "kind": "init",
605                "loc": {
606                  "start": {
607                    "line": 21,
608                    "column": 31,
609                    "program": "objectDestructuring.ts"
610                  },
611                  "end": {
612                    "line": 21,
613                    "column": 42,
614                    "program": "objectDestructuring.ts"
615                  }
616                }
617              }
618            ],
619            "loc": {
620              "start": {
621                "line": 21,
622                "column": 5,
623                "program": "objectDestructuring.ts"
624              },
625              "end": {
626                "line": 21,
627                "column": 44,
628                "program": "objectDestructuring.ts"
629              }
630            }
631          },
632          "init": {
633            "type": "ObjectExpression",
634            "properties": [
635              {
636                "type": "Property",
637                "method": false,
638                "shorthand": false,
639                "computed": false,
640                "key": {
641                  "type": "Identifier",
642                  "name": "prop",
643                  "decorators": [],
644                  "loc": {
645                    "start": {
646                      "line": 21,
647                      "column": 49,
648                      "program": "objectDestructuring.ts"
649                    },
650                    "end": {
651                      "line": 21,
652                      "column": 53,
653                      "program": "objectDestructuring.ts"
654                    }
655                  }
656                },
657                "value": {
658                  "type": "ArrayExpression",
659                  "elements": [
660                    {
661                      "type": "NumberLiteral",
662                      "value": 1,
663                      "loc": {
664                        "start": {
665                          "line": 21,
666                          "column": 56,
667                          "program": "objectDestructuring.ts"
668                        },
669                        "end": {
670                          "line": 21,
671                          "column": 57,
672                          "program": "objectDestructuring.ts"
673                        }
674                      }
675                    },
676                    {
677                      "type": "ArrayExpression",
678                      "elements": [],
679                      "loc": {
680                        "start": {
681                          "line": 21,
682                          "column": 59,
683                          "program": "objectDestructuring.ts"
684                        },
685                        "end": {
686                          "line": 21,
687                          "column": 61,
688                          "program": "objectDestructuring.ts"
689                        }
690                      }
691                    },
692                    {
693                      "type": "ObjectExpression",
694                      "properties": [],
695                      "loc": {
696                        "start": {
697                          "line": 21,
698                          "column": 63,
699                          "program": "objectDestructuring.ts"
700                        },
701                        "end": {
702                          "line": 21,
703                          "column": 65,
704                          "program": "objectDestructuring.ts"
705                        }
706                      }
707                    },
708                    {
709                      "type": "StringLiteral",
710                      "value": "foo",
711                      "loc": {
712                        "start": {
713                          "line": 21,
714                          "column": 67,
715                          "program": "objectDestructuring.ts"
716                        },
717                        "end": {
718                          "line": 21,
719                          "column": 72,
720                          "program": "objectDestructuring.ts"
721                        }
722                      }
723                    }
724                  ],
725                  "loc": {
726                    "start": {
727                      "line": 21,
728                      "column": 55,
729                      "program": "objectDestructuring.ts"
730                    },
731                    "end": {
732                      "line": 21,
733                      "column": 73,
734                      "program": "objectDestructuring.ts"
735                    }
736                  }
737                },
738                "kind": "init",
739                "loc": {
740                  "start": {
741                    "line": 21,
742                    "column": 49,
743                    "program": "objectDestructuring.ts"
744                  },
745                  "end": {
746                    "line": 21,
747                    "column": 73,
748                    "program": "objectDestructuring.ts"
749                  }
750                }
751              }
752            ],
753            "loc": {
754              "start": {
755                "line": 21,
756                "column": 47,
757                "program": "objectDestructuring.ts"
758              },
759              "end": {
760                "line": 21,
761                "column": 75,
762                "program": "objectDestructuring.ts"
763              }
764            }
765          },
766          "loc": {
767            "start": {
768              "line": 21,
769              "column": 5,
770              "program": "objectDestructuring.ts"
771            },
772            "end": {
773              "line": 21,
774              "column": 75,
775              "program": "objectDestructuring.ts"
776            }
777          }
778        }
779      ],
780      "kind": "var",
781      "loc": {
782        "start": {
783          "line": 21,
784          "column": 1,
785          "program": "objectDestructuring.ts"
786        },
787        "end": {
788          "line": 21,
789          "column": 75,
790          "program": "objectDestructuring.ts"
791        }
792      }
793    },
794    {
795      "type": "ExpressionStatement",
796      "expression": {
797        "type": "AssignmentExpression",
798        "operator": "=",
799        "left": {
800          "type": "Identifier",
801          "name": "var3",
802          "decorators": [],
803          "loc": {
804            "start": {
805              "line": 22,
806              "column": 1,
807              "program": "objectDestructuring.ts"
808            },
809            "end": {
810              "line": 22,
811              "column": 5,
812              "program": "objectDestructuring.ts"
813            }
814          }
815        },
816        "right": {
817          "type": "NumberLiteral",
818          "value": 12,
819          "loc": {
820            "start": {
821              "line": 22,
822              "column": 8,
823              "program": "objectDestructuring.ts"
824            },
825            "end": {
826              "line": 22,
827              "column": 10,
828              "program": "objectDestructuring.ts"
829            }
830          }
831        },
832        "loc": {
833          "start": {
834            "line": 22,
835            "column": 1,
836            "program": "objectDestructuring.ts"
837          },
838          "end": {
839            "line": 22,
840            "column": 10,
841            "program": "objectDestructuring.ts"
842          }
843        }
844      },
845      "loc": {
846        "start": {
847          "line": 22,
848          "column": 1,
849          "program": "objectDestructuring.ts"
850        },
851        "end": {
852          "line": 22,
853          "column": 11,
854          "program": "objectDestructuring.ts"
855        }
856      }
857    },
858    {
859      "type": "ExpressionStatement",
860      "expression": {
861        "type": "AssignmentExpression",
862        "operator": "=",
863        "left": {
864          "type": "Identifier",
865          "name": "var4",
866          "decorators": [],
867          "loc": {
868            "start": {
869              "line": 23,
870              "column": 1,
871              "program": "objectDestructuring.ts"
872            },
873            "end": {
874              "line": 23,
875              "column": 5,
876              "program": "objectDestructuring.ts"
877            }
878          }
879        },
880        "right": {
881          "type": "StringLiteral",
882          "value": "baz",
883          "loc": {
884            "start": {
885              "line": 23,
886              "column": 8,
887              "program": "objectDestructuring.ts"
888            },
889            "end": {
890              "line": 23,
891              "column": 13,
892              "program": "objectDestructuring.ts"
893            }
894          }
895        },
896        "loc": {
897          "start": {
898            "line": 23,
899            "column": 1,
900            "program": "objectDestructuring.ts"
901          },
902          "end": {
903            "line": 23,
904            "column": 13,
905            "program": "objectDestructuring.ts"
906          }
907        }
908      },
909      "loc": {
910        "start": {
911          "line": 23,
912          "column": 1,
913          "program": "objectDestructuring.ts"
914        },
915        "end": {
916          "line": 23,
917          "column": 14,
918          "program": "objectDestructuring.ts"
919        }
920      }
921    },
922    {
923      "type": "ExpressionStatement",
924      "expression": {
925        "type": "AssignmentExpression",
926        "operator": "=",
927        "left": {
928          "type": "Identifier",
929          "name": "var5",
930          "decorators": [],
931          "loc": {
932            "start": {
933              "line": 24,
934              "column": 1,
935              "program": "objectDestructuring.ts"
936            },
937            "end": {
938              "line": 24,
939              "column": 5,
940              "program": "objectDestructuring.ts"
941            }
942          }
943        },
944        "right": {
945          "type": "BooleanLiteral",
946          "value": false,
947          "loc": {
948            "start": {
949              "line": 24,
950              "column": 8,
951              "program": "objectDestructuring.ts"
952            },
953            "end": {
954              "line": 24,
955              "column": 13,
956              "program": "objectDestructuring.ts"
957            }
958          }
959        },
960        "loc": {
961          "start": {
962            "line": 24,
963            "column": 1,
964            "program": "objectDestructuring.ts"
965          },
966          "end": {
967            "line": 24,
968            "column": 13,
969            "program": "objectDestructuring.ts"
970          }
971        }
972      },
973      "loc": {
974        "start": {
975          "line": 24,
976          "column": 1,
977          "program": "objectDestructuring.ts"
978        },
979        "end": {
980          "line": 24,
981          "column": 14,
982          "program": "objectDestructuring.ts"
983        }
984      }
985    },
986    {
987      "type": "VariableDeclaration",
988      "declarations": [
989        {
990          "type": "VariableDeclarator",
991          "id": {
992            "type": "ObjectPattern",
993            "properties": [
994              {
995                "type": "Property",
996                "method": false,
997                "shorthand": false,
998                "computed": false,
999                "key": {
1000                  "type": "Identifier",
1001                  "name": "prop",
1002                  "decorators": [],
1003                  "loc": {
1004                    "start": {
1005                      "line": 26,
1006                      "column": 7,
1007                      "program": "objectDestructuring.ts"
1008                    },
1009                    "end": {
1010                      "line": 26,
1011                      "column": 11,
1012                      "program": "objectDestructuring.ts"
1013                    }
1014                  }
1015                },
1016                "value": {
1017                  "type": "AssignmentPattern",
1018                  "left": {
1019                    "type": "ObjectPattern",
1020                    "properties": [
1021                      {
1022                        "type": "Property",
1023                        "method": false,
1024                        "shorthand": true,
1025                        "computed": false,
1026                        "key": {
1027                          "type": "Identifier",
1028                          "name": "var6",
1029                          "decorators": [],
1030                          "loc": {
1031                            "start": {
1032                              "line": 26,
1033                              "column": 15,
1034                              "program": "objectDestructuring.ts"
1035                            },
1036                            "end": {
1037                              "line": 26,
1038                              "column": 19,
1039                              "program": "objectDestructuring.ts"
1040                            }
1041                          }
1042                        },
1043                        "value": {
1044                          "type": "AssignmentPattern",
1045                          "left": {
1046                            "type": "Identifier",
1047                            "name": "var6",
1048                            "decorators": [],
1049                            "loc": {
1050                              "start": {
1051                                "line": 26,
1052                                "column": 15,
1053                                "program": "objectDestructuring.ts"
1054                              },
1055                              "end": {
1056                                "line": 26,
1057                                "column": 19,
1058                                "program": "objectDestructuring.ts"
1059                              }
1060                            }
1061                          },
1062                          "right": {
1063                            "type": "NumberLiteral",
1064                            "value": 3,
1065                            "loc": {
1066                              "start": {
1067                                "line": 26,
1068                                "column": 22,
1069                                "program": "objectDestructuring.ts"
1070                              },
1071                              "end": {
1072                                "line": 26,
1073                                "column": 23,
1074                                "program": "objectDestructuring.ts"
1075                              }
1076                            }
1077                          },
1078                          "loc": {
1079                            "start": {
1080                              "line": 26,
1081                              "column": 15,
1082                              "program": "objectDestructuring.ts"
1083                            },
1084                            "end": {
1085                              "line": 26,
1086                              "column": 23,
1087                              "program": "objectDestructuring.ts"
1088                            }
1089                          }
1090                        },
1091                        "kind": "init",
1092                        "loc": {
1093                          "start": {
1094                            "line": 26,
1095                            "column": 15,
1096                            "program": "objectDestructuring.ts"
1097                          },
1098                          "end": {
1099                            "line": 26,
1100                            "column": 23,
1101                            "program": "objectDestructuring.ts"
1102                          }
1103                        }
1104                      },
1105                      {
1106                        "type": "Property",
1107                        "method": false,
1108                        "shorthand": true,
1109                        "computed": false,
1110                        "key": {
1111                          "type": "Identifier",
1112                          "name": "var7",
1113                          "decorators": [],
1114                          "loc": {
1115                            "start": {
1116                              "line": 26,
1117                              "column": 25,
1118                              "program": "objectDestructuring.ts"
1119                            },
1120                            "end": {
1121                              "line": 26,
1122                              "column": 29,
1123                              "program": "objectDestructuring.ts"
1124                            }
1125                          }
1126                        },
1127                        "value": {
1128                          "type": "AssignmentPattern",
1129                          "left": {
1130                            "type": "Identifier",
1131                            "name": "var7",
1132                            "decorators": [],
1133                            "loc": {
1134                              "start": {
1135                                "line": 26,
1136                                "column": 25,
1137                                "program": "objectDestructuring.ts"
1138                              },
1139                              "end": {
1140                                "line": 26,
1141                                "column": 29,
1142                                "program": "objectDestructuring.ts"
1143                              }
1144                            }
1145                          },
1146                          "right": {
1147                            "type": "StringLiteral",
1148                            "value": "",
1149                            "loc": {
1150                              "start": {
1151                                "line": 26,
1152                                "column": 32,
1153                                "program": "objectDestructuring.ts"
1154                              },
1155                              "end": {
1156                                "line": 26,
1157                                "column": 34,
1158                                "program": "objectDestructuring.ts"
1159                              }
1160                            }
1161                          },
1162                          "loc": {
1163                            "start": {
1164                              "line": 26,
1165                              "column": 25,
1166                              "program": "objectDestructuring.ts"
1167                            },
1168                            "end": {
1169                              "line": 26,
1170                              "column": 34,
1171                              "program": "objectDestructuring.ts"
1172                            }
1173                          }
1174                        },
1175                        "kind": "init",
1176                        "loc": {
1177                          "start": {
1178                            "line": 26,
1179                            "column": 25,
1180                            "program": "objectDestructuring.ts"
1181                          },
1182                          "end": {
1183                            "line": 26,
1184                            "column": 34,
1185                            "program": "objectDestructuring.ts"
1186                          }
1187                        }
1188                      }
1189                    ],
1190                    "loc": {
1191                      "start": {
1192                        "line": 26,
1193                        "column": 13,
1194                        "program": "objectDestructuring.ts"
1195                      },
1196                      "end": {
1197                        "line": 26,
1198                        "column": 36,
1199                        "program": "objectDestructuring.ts"
1200                      }
1201                    }
1202                  },
1203                  "right": {
1204                    "type": "ObjectExpression",
1205                    "properties": [
1206                      {
1207                        "type": "Property",
1208                        "method": false,
1209                        "shorthand": false,
1210                        "computed": false,
1211                        "key": {
1212                          "type": "Identifier",
1213                          "name": "var6",
1214                          "decorators": [],
1215                          "loc": {
1216                            "start": {
1217                              "line": 26,
1218                              "column": 41,
1219                              "program": "objectDestructuring.ts"
1220                            },
1221                            "end": {
1222                              "line": 26,
1223                              "column": 45,
1224                              "program": "objectDestructuring.ts"
1225                            }
1226                          }
1227                        },
1228                        "value": {
1229                          "type": "StringLiteral",
1230                          "value": "foo",
1231                          "loc": {
1232                            "start": {
1233                              "line": 26,
1234                              "column": 47,
1235                              "program": "objectDestructuring.ts"
1236                            },
1237                            "end": {
1238                              "line": 26,
1239                              "column": 52,
1240                              "program": "objectDestructuring.ts"
1241                            }
1242                          }
1243                        },
1244                        "kind": "init",
1245                        "loc": {
1246                          "start": {
1247                            "line": 26,
1248                            "column": 41,
1249                            "program": "objectDestructuring.ts"
1250                          },
1251                          "end": {
1252                            "line": 26,
1253                            "column": 52,
1254                            "program": "objectDestructuring.ts"
1255                          }
1256                        }
1257                      },
1258                      {
1259                        "type": "Property",
1260                        "method": false,
1261                        "shorthand": false,
1262                        "computed": false,
1263                        "key": {
1264                          "type": "Identifier",
1265                          "name": "var7",
1266                          "decorators": [],
1267                          "loc": {
1268                            "start": {
1269                              "line": 26,
1270                              "column": 54,
1271                              "program": "objectDestructuring.ts"
1272                            },
1273                            "end": {
1274                              "line": 26,
1275                              "column": 58,
1276                              "program": "objectDestructuring.ts"
1277                            }
1278                          }
1279                        },
1280                        "value": {
1281                          "type": "BooleanLiteral",
1282                          "value": true,
1283                          "loc": {
1284                            "start": {
1285                              "line": 26,
1286                              "column": 60,
1287                              "program": "objectDestructuring.ts"
1288                            },
1289                            "end": {
1290                              "line": 26,
1291                              "column": 64,
1292                              "program": "objectDestructuring.ts"
1293                            }
1294                          }
1295                        },
1296                        "kind": "init",
1297                        "loc": {
1298                          "start": {
1299                            "line": 26,
1300                            "column": 54,
1301                            "program": "objectDestructuring.ts"
1302                          },
1303                          "end": {
1304                            "line": 26,
1305                            "column": 64,
1306                            "program": "objectDestructuring.ts"
1307                          }
1308                        }
1309                      }
1310                    ],
1311                    "loc": {
1312                      "start": {
1313                        "line": 26,
1314                        "column": 39,
1315                        "program": "objectDestructuring.ts"
1316                      },
1317                      "end": {
1318                        "line": 26,
1319                        "column": 66,
1320                        "program": "objectDestructuring.ts"
1321                      }
1322                    }
1323                  },
1324                  "loc": {
1325                    "start": {
1326                      "line": 26,
1327                      "column": 13,
1328                      "program": "objectDestructuring.ts"
1329                    },
1330                    "end": {
1331                      "line": 26,
1332                      "column": 66,
1333                      "program": "objectDestructuring.ts"
1334                    }
1335                  }
1336                },
1337                "kind": "init",
1338                "loc": {
1339                  "start": {
1340                    "line": 26,
1341                    "column": 7,
1342                    "program": "objectDestructuring.ts"
1343                  },
1344                  "end": {
1345                    "line": 26,
1346                    "column": 66,
1347                    "program": "objectDestructuring.ts"
1348                  }
1349                }
1350              }
1351            ],
1352            "loc": {
1353              "start": {
1354                "line": 26,
1355                "column": 5,
1356                "program": "objectDestructuring.ts"
1357              },
1358              "end": {
1359                "line": 26,
1360                "column": 68,
1361                "program": "objectDestructuring.ts"
1362              }
1363            }
1364          },
1365          "init": {
1366            "type": "ObjectExpression",
1367            "properties": [
1368              {
1369                "type": "Property",
1370                "method": false,
1371                "shorthand": false,
1372                "computed": false,
1373                "key": {
1374                  "type": "Identifier",
1375                  "name": "prop",
1376                  "decorators": [],
1377                  "loc": {
1378                    "start": {
1379                      "line": 26,
1380                      "column": 73,
1381                      "program": "objectDestructuring.ts"
1382                    },
1383                    "end": {
1384                      "line": 26,
1385                      "column": 77,
1386                      "program": "objectDestructuring.ts"
1387                    }
1388                  }
1389                },
1390                "value": {
1391                  "type": "ObjectExpression",
1392                  "properties": [
1393                    {
1394                      "type": "Property",
1395                      "method": false,
1396                      "shorthand": false,
1397                      "computed": false,
1398                      "key": {
1399                        "type": "Identifier",
1400                        "name": "var6",
1401                        "decorators": [],
1402                        "loc": {
1403                          "start": {
1404                            "line": 26,
1405                            "column": 81,
1406                            "program": "objectDestructuring.ts"
1407                          },
1408                          "end": {
1409                            "line": 26,
1410                            "column": 85,
1411                            "program": "objectDestructuring.ts"
1412                          }
1413                        }
1414                      },
1415                      "value": {
1416                        "type": "NumberLiteral",
1417                        "value": 1,
1418                        "loc": {
1419                          "start": {
1420                            "line": 26,
1421                            "column": 87,
1422                            "program": "objectDestructuring.ts"
1423                          },
1424                          "end": {
1425                            "line": 26,
1426                            "column": 88,
1427                            "program": "objectDestructuring.ts"
1428                          }
1429                        }
1430                      },
1431                      "kind": "init",
1432                      "loc": {
1433                        "start": {
1434                          "line": 26,
1435                          "column": 81,
1436                          "program": "objectDestructuring.ts"
1437                        },
1438                        "end": {
1439                          "line": 26,
1440                          "column": 88,
1441                          "program": "objectDestructuring.ts"
1442                        }
1443                      }
1444                    },
1445                    {
1446                      "type": "Property",
1447                      "method": false,
1448                      "shorthand": false,
1449                      "computed": false,
1450                      "key": {
1451                        "type": "Identifier",
1452                        "name": "var7",
1453                        "decorators": [],
1454                        "loc": {
1455                          "start": {
1456                            "line": 26,
1457                            "column": 90,
1458                            "program": "objectDestructuring.ts"
1459                          },
1460                          "end": {
1461                            "line": 26,
1462                            "column": 94,
1463                            "program": "objectDestructuring.ts"
1464                          }
1465                        }
1466                      },
1467                      "value": {
1468                        "type": "StringLiteral",
1469                        "value": "bar",
1470                        "loc": {
1471                          "start": {
1472                            "line": 26,
1473                            "column": 96,
1474                            "program": "objectDestructuring.ts"
1475                          },
1476                          "end": {
1477                            "line": 26,
1478                            "column": 101,
1479                            "program": "objectDestructuring.ts"
1480                          }
1481                        }
1482                      },
1483                      "kind": "init",
1484                      "loc": {
1485                        "start": {
1486                          "line": 26,
1487                          "column": 90,
1488                          "program": "objectDestructuring.ts"
1489                        },
1490                        "end": {
1491                          "line": 26,
1492                          "column": 101,
1493                          "program": "objectDestructuring.ts"
1494                        }
1495                      }
1496                    }
1497                  ],
1498                  "loc": {
1499                    "start": {
1500                      "line": 26,
1501                      "column": 79,
1502                      "program": "objectDestructuring.ts"
1503                    },
1504                    "end": {
1505                      "line": 26,
1506                      "column": 103,
1507                      "program": "objectDestructuring.ts"
1508                    }
1509                  }
1510                },
1511                "kind": "init",
1512                "loc": {
1513                  "start": {
1514                    "line": 26,
1515                    "column": 73,
1516                    "program": "objectDestructuring.ts"
1517                  },
1518                  "end": {
1519                    "line": 26,
1520                    "column": 103,
1521                    "program": "objectDestructuring.ts"
1522                  }
1523                }
1524              }
1525            ],
1526            "loc": {
1527              "start": {
1528                "line": 26,
1529                "column": 71,
1530                "program": "objectDestructuring.ts"
1531              },
1532              "end": {
1533                "line": 26,
1534                "column": 105,
1535                "program": "objectDestructuring.ts"
1536              }
1537            }
1538          },
1539          "loc": {
1540            "start": {
1541              "line": 26,
1542              "column": 5,
1543              "program": "objectDestructuring.ts"
1544            },
1545            "end": {
1546              "line": 26,
1547              "column": 105,
1548              "program": "objectDestructuring.ts"
1549            }
1550          }
1551        }
1552      ],
1553      "kind": "var",
1554      "loc": {
1555        "start": {
1556          "line": 26,
1557          "column": 1,
1558          "program": "objectDestructuring.ts"
1559        },
1560        "end": {
1561          "line": 26,
1562          "column": 105,
1563          "program": "objectDestructuring.ts"
1564        }
1565      }
1566    },
1567    {
1568      "type": "ExpressionStatement",
1569      "expression": {
1570        "type": "AssignmentExpression",
1571        "operator": "=",
1572        "left": {
1573          "type": "Identifier",
1574          "name": "var6",
1575          "decorators": [],
1576          "loc": {
1577            "start": {
1578              "line": 27,
1579              "column": 1,
1580              "program": "objectDestructuring.ts"
1581            },
1582            "end": {
1583              "line": 27,
1584              "column": 5,
1585              "program": "objectDestructuring.ts"
1586            }
1587          }
1588        },
1589        "right": {
1590          "type": "NumberLiteral",
1591          "value": 1,
1592          "loc": {
1593            "start": {
1594              "line": 27,
1595              "column": 8,
1596              "program": "objectDestructuring.ts"
1597            },
1598            "end": {
1599              "line": 27,
1600              "column": 9,
1601              "program": "objectDestructuring.ts"
1602            }
1603          }
1604        },
1605        "loc": {
1606          "start": {
1607            "line": 27,
1608            "column": 1,
1609            "program": "objectDestructuring.ts"
1610          },
1611          "end": {
1612            "line": 27,
1613            "column": 9,
1614            "program": "objectDestructuring.ts"
1615          }
1616        }
1617      },
1618      "loc": {
1619        "start": {
1620          "line": 27,
1621          "column": 1,
1622          "program": "objectDestructuring.ts"
1623        },
1624        "end": {
1625          "line": 27,
1626          "column": 10,
1627          "program": "objectDestructuring.ts"
1628        }
1629      }
1630    },
1631    {
1632      "type": "ExpressionStatement",
1633      "expression": {
1634        "type": "AssignmentExpression",
1635        "operator": "=",
1636        "left": {
1637          "type": "Identifier",
1638          "name": "var6",
1639          "decorators": [],
1640          "loc": {
1641            "start": {
1642              "line": 28,
1643              "column": 1,
1644              "program": "objectDestructuring.ts"
1645            },
1646            "end": {
1647              "line": 28,
1648              "column": 5,
1649              "program": "objectDestructuring.ts"
1650            }
1651          }
1652        },
1653        "right": {
1654          "type": "StringLiteral",
1655          "value": "baz",
1656          "loc": {
1657            "start": {
1658              "line": 28,
1659              "column": 8,
1660              "program": "objectDestructuring.ts"
1661            },
1662            "end": {
1663              "line": 28,
1664              "column": 13,
1665              "program": "objectDestructuring.ts"
1666            }
1667          }
1668        },
1669        "loc": {
1670          "start": {
1671            "line": 28,
1672            "column": 1,
1673            "program": "objectDestructuring.ts"
1674          },
1675          "end": {
1676            "line": 28,
1677            "column": 13,
1678            "program": "objectDestructuring.ts"
1679          }
1680        }
1681      },
1682      "loc": {
1683        "start": {
1684          "line": 28,
1685          "column": 1,
1686          "program": "objectDestructuring.ts"
1687        },
1688        "end": {
1689          "line": 28,
1690          "column": 14,
1691          "program": "objectDestructuring.ts"
1692        }
1693      }
1694    },
1695    {
1696      "type": "ExpressionStatement",
1697      "expression": {
1698        "type": "AssignmentExpression",
1699        "operator": "=",
1700        "left": {
1701          "type": "Identifier",
1702          "name": "var7",
1703          "decorators": [],
1704          "loc": {
1705            "start": {
1706              "line": 29,
1707              "column": 1,
1708              "program": "objectDestructuring.ts"
1709            },
1710            "end": {
1711              "line": 29,
1712              "column": 5,
1713              "program": "objectDestructuring.ts"
1714            }
1715          }
1716        },
1717        "right": {
1718          "type": "BooleanLiteral",
1719          "value": false,
1720          "loc": {
1721            "start": {
1722              "line": 29,
1723              "column": 8,
1724              "program": "objectDestructuring.ts"
1725            },
1726            "end": {
1727              "line": 29,
1728              "column": 13,
1729              "program": "objectDestructuring.ts"
1730            }
1731          }
1732        },
1733        "loc": {
1734          "start": {
1735            "line": 29,
1736            "column": 1,
1737            "program": "objectDestructuring.ts"
1738          },
1739          "end": {
1740            "line": 29,
1741            "column": 13,
1742            "program": "objectDestructuring.ts"
1743          }
1744        }
1745      },
1746      "loc": {
1747        "start": {
1748          "line": 29,
1749          "column": 1,
1750          "program": "objectDestructuring.ts"
1751        },
1752        "end": {
1753          "line": 29,
1754          "column": 14,
1755          "program": "objectDestructuring.ts"
1756        }
1757      }
1758    },
1759    {
1760      "type": "ExpressionStatement",
1761      "expression": {
1762        "type": "AssignmentExpression",
1763        "operator": "=",
1764        "left": {
1765          "type": "Identifier",
1766          "name": "var7",
1767          "decorators": [],
1768          "loc": {
1769            "start": {
1770              "line": 30,
1771              "column": 1,
1772              "program": "objectDestructuring.ts"
1773            },
1774            "end": {
1775              "line": 30,
1776              "column": 5,
1777              "program": "objectDestructuring.ts"
1778            }
1779          }
1780        },
1781        "right": {
1782          "type": "StringLiteral",
1783          "value": "baz",
1784          "loc": {
1785            "start": {
1786              "line": 30,
1787              "column": 8,
1788              "program": "objectDestructuring.ts"
1789            },
1790            "end": {
1791              "line": 30,
1792              "column": 13,
1793              "program": "objectDestructuring.ts"
1794            }
1795          }
1796        },
1797        "loc": {
1798          "start": {
1799            "line": 30,
1800            "column": 1,
1801            "program": "objectDestructuring.ts"
1802          },
1803          "end": {
1804            "line": 30,
1805            "column": 13,
1806            "program": "objectDestructuring.ts"
1807          }
1808        }
1809      },
1810      "loc": {
1811        "start": {
1812          "line": 30,
1813          "column": 1,
1814          "program": "objectDestructuring.ts"
1815        },
1816        "end": {
1817          "line": 30,
1818          "column": 14,
1819          "program": "objectDestructuring.ts"
1820        }
1821      }
1822    },
1823    {
1824      "type": "VariableDeclaration",
1825      "declarations": [
1826        {
1827          "type": "VariableDeclarator",
1828          "id": {
1829            "type": "ObjectPattern",
1830            "properties": [
1831              {
1832                "type": "Property",
1833                "method": false,
1834                "shorthand": false,
1835                "computed": false,
1836                "key": {
1837                  "type": "Identifier",
1838                  "name": "prop",
1839                  "decorators": [],
1840                  "loc": {
1841                    "start": {
1842                      "line": 32,
1843                      "column": 7,
1844                      "program": "objectDestructuring.ts"
1845                    },
1846                    "end": {
1847                      "line": 32,
1848                      "column": 11,
1849                      "program": "objectDestructuring.ts"
1850                    }
1851                  }
1852                },
1853                "value": {
1854                  "type": "AssignmentPattern",
1855                  "left": {
1856                    "type": "ObjectPattern",
1857                    "properties": [
1858                      {
1859                        "type": "Property",
1860                        "method": false,
1861                        "shorthand": false,
1862                        "computed": false,
1863                        "key": {
1864                          "type": "Identifier",
1865                          "name": "prop",
1866                          "decorators": [],
1867                          "loc": {
1868                            "start": {
1869                              "line": 32,
1870                              "column": 15,
1871                              "program": "objectDestructuring.ts"
1872                            },
1873                            "end": {
1874                              "line": 32,
1875                              "column": 19,
1876                              "program": "objectDestructuring.ts"
1877                            }
1878                          }
1879                        },
1880                        "value": {
1881                          "type": "ArrayPattern",
1882                          "elements": [
1883                            {
1884                              "type": "AssignmentPattern",
1885                              "left": {
1886                                "type": "Identifier",
1887                                "name": "var8",
1888                                "decorators": [],
1889                                "loc": {
1890                                  "start": {
1891                                    "line": 32,
1892                                    "column": 22,
1893                                    "program": "objectDestructuring.ts"
1894                                  },
1895                                  "end": {
1896                                    "line": 32,
1897                                    "column": 26,
1898                                    "program": "objectDestructuring.ts"
1899                                  }
1900                                }
1901                              },
1902                              "right": {
1903                                "type": "NumberLiteral",
1904                                "value": 1,
1905                                "loc": {
1906                                  "start": {
1907                                    "line": 32,
1908                                    "column": 29,
1909                                    "program": "objectDestructuring.ts"
1910                                  },
1911                                  "end": {
1912                                    "line": 32,
1913                                    "column": 30,
1914                                    "program": "objectDestructuring.ts"
1915                                  }
1916                                }
1917                              },
1918                              "loc": {
1919                                "start": {
1920                                  "line": 32,
1921                                  "column": 22,
1922                                  "program": "objectDestructuring.ts"
1923                                },
1924                                "end": {
1925                                  "line": 32,
1926                                  "column": 30,
1927                                  "program": "objectDestructuring.ts"
1928                                }
1929                              }
1930                            },
1931                            {
1932                              "type": "AssignmentPattern",
1933                              "left": {
1934                                "type": "Identifier",
1935                                "name": "var9",
1936                                "decorators": [],
1937                                "loc": {
1938                                  "start": {
1939                                    "line": 32,
1940                                    "column": 32,
1941                                    "program": "objectDestructuring.ts"
1942                                  },
1943                                  "end": {
1944                                    "line": 32,
1945                                    "column": 36,
1946                                    "program": "objectDestructuring.ts"
1947                                  }
1948                                }
1949                              },
1950                              "right": {
1951                                "type": "ObjectExpression",
1952                                "properties": [
1953                                  {
1954                                    "type": "Property",
1955                                    "method": false,
1956                                    "shorthand": false,
1957                                    "computed": false,
1958                                    "key": {
1959                                      "type": "Identifier",
1960                                      "name": "a",
1961                                      "decorators": [],
1962                                      "loc": {
1963                                        "start": {
1964                                          "line": 32,
1965                                          "column": 41,
1966                                          "program": "objectDestructuring.ts"
1967                                        },
1968                                        "end": {
1969                                          "line": 32,
1970                                          "column": 42,
1971                                          "program": "objectDestructuring.ts"
1972                                        }
1973                                      }
1974                                    },
1975                                    "value": {
1976                                      "type": "NumberLiteral",
1977                                      "value": 3,
1978                                      "loc": {
1979                                        "start": {
1980                                          "line": 32,
1981                                          "column": 44,
1982                                          "program": "objectDestructuring.ts"
1983                                        },
1984                                        "end": {
1985                                          "line": 32,
1986                                          "column": 45,
1987                                          "program": "objectDestructuring.ts"
1988                                        }
1989                                      }
1990                                    },
1991                                    "kind": "init",
1992                                    "loc": {
1993                                      "start": {
1994                                        "line": 32,
1995                                        "column": 41,
1996                                        "program": "objectDestructuring.ts"
1997                                      },
1998                                      "end": {
1999                                        "line": 32,
2000                                        "column": 45,
2001                                        "program": "objectDestructuring.ts"
2002                                      }
2003                                    }
2004                                  },
2005                                  {
2006                                    "type": "Property",
2007                                    "method": false,
2008                                    "shorthand": false,
2009                                    "computed": false,
2010                                    "key": {
2011                                      "type": "Identifier",
2012                                      "name": "b",
2013                                      "decorators": [],
2014                                      "loc": {
2015                                        "start": {
2016                                          "line": 32,
2017                                          "column": 47,
2018                                          "program": "objectDestructuring.ts"
2019                                        },
2020                                        "end": {
2021                                          "line": 32,
2022                                          "column": 48,
2023                                          "program": "objectDestructuring.ts"
2024                                        }
2025                                      }
2026                                    },
2027                                    "value": {
2028                                      "type": "StringLiteral",
2029                                      "value": "bar",
2030                                      "loc": {
2031                                        "start": {
2032                                          "line": 32,
2033                                          "column": 50,
2034                                          "program": "objectDestructuring.ts"
2035                                        },
2036                                        "end": {
2037                                          "line": 32,
2038                                          "column": 55,
2039                                          "program": "objectDestructuring.ts"
2040                                        }
2041                                      }
2042                                    },
2043                                    "kind": "init",
2044                                    "loc": {
2045                                      "start": {
2046                                        "line": 32,
2047                                        "column": 47,
2048                                        "program": "objectDestructuring.ts"
2049                                      },
2050                                      "end": {
2051                                        "line": 32,
2052                                        "column": 55,
2053                                        "program": "objectDestructuring.ts"
2054                                      }
2055                                    }
2056                                  }
2057                                ],
2058                                "loc": {
2059                                  "start": {
2060                                    "line": 32,
2061                                    "column": 39,
2062                                    "program": "objectDestructuring.ts"
2063                                  },
2064                                  "end": {
2065                                    "line": 32,
2066                                    "column": 57,
2067                                    "program": "objectDestructuring.ts"
2068                                  }
2069                                }
2070                              },
2071                              "loc": {
2072                                "start": {
2073                                  "line": 32,
2074                                  "column": 32,
2075                                  "program": "objectDestructuring.ts"
2076                                },
2077                                "end": {
2078                                  "line": 32,
2079                                  "column": 57,
2080                                  "program": "objectDestructuring.ts"
2081                                }
2082                              }
2083                            }
2084                          ],
2085                          "loc": {
2086                            "start": {
2087                              "line": 32,
2088                              "column": 21,
2089                              "program": "objectDestructuring.ts"
2090                            },
2091                            "end": {
2092                              "line": 32,
2093                              "column": 58,
2094                              "program": "objectDestructuring.ts"
2095                            }
2096                          }
2097                        },
2098                        "kind": "init",
2099                        "loc": {
2100                          "start": {
2101                            "line": 32,
2102                            "column": 15,
2103                            "program": "objectDestructuring.ts"
2104                          },
2105                          "end": {
2106                            "line": 32,
2107                            "column": 58,
2108                            "program": "objectDestructuring.ts"
2109                          }
2110                        }
2111                      }
2112                    ],
2113                    "loc": {
2114                      "start": {
2115                        "line": 32,
2116                        "column": 13,
2117                        "program": "objectDestructuring.ts"
2118                      },
2119                      "end": {
2120                        "line": 32,
2121                        "column": 60,
2122                        "program": "objectDestructuring.ts"
2123                      }
2124                    }
2125                  },
2126                  "right": {
2127                    "type": "ObjectExpression",
2128                    "properties": [
2129                      {
2130                        "type": "Property",
2131                        "method": false,
2132                        "shorthand": false,
2133                        "computed": false,
2134                        "key": {
2135                          "type": "Identifier",
2136                          "name": "prop",
2137                          "decorators": [],
2138                          "loc": {
2139                            "start": {
2140                              "line": 32,
2141                              "column": 65,
2142                              "program": "objectDestructuring.ts"
2143                            },
2144                            "end": {
2145                              "line": 32,
2146                              "column": 69,
2147                              "program": "objectDestructuring.ts"
2148                            }
2149                          }
2150                        },
2151                        "value": {
2152                          "type": "ArrayExpression",
2153                          "elements": [
2154                            {
2155                              "type": "StringLiteral",
2156                              "value": "foo",
2157                              "loc": {
2158                                "start": {
2159                                  "line": 32,
2160                                  "column": 72,
2161                                  "program": "objectDestructuring.ts"
2162                                },
2163                                "end": {
2164                                  "line": 32,
2165                                  "column": 77,
2166                                  "program": "objectDestructuring.ts"
2167                                }
2168                              }
2169                            },
2170                            {
2171                              "type": "BooleanLiteral",
2172                              "value": true,
2173                              "loc": {
2174                                "start": {
2175                                  "line": 32,
2176                                  "column": 79,
2177                                  "program": "objectDestructuring.ts"
2178                                },
2179                                "end": {
2180                                  "line": 32,
2181                                  "column": 83,
2182                                  "program": "objectDestructuring.ts"
2183                                }
2184                              }
2185                            }
2186                          ],
2187                          "loc": {
2188                            "start": {
2189                              "line": 32,
2190                              "column": 71,
2191                              "program": "objectDestructuring.ts"
2192                            },
2193                            "end": {
2194                              "line": 32,
2195                              "column": 84,
2196                              "program": "objectDestructuring.ts"
2197                            }
2198                          }
2199                        },
2200                        "kind": "init",
2201                        "loc": {
2202                          "start": {
2203                            "line": 32,
2204                            "column": 65,
2205                            "program": "objectDestructuring.ts"
2206                          },
2207                          "end": {
2208                            "line": 32,
2209                            "column": 84,
2210                            "program": "objectDestructuring.ts"
2211                          }
2212                        }
2213                      }
2214                    ],
2215                    "loc": {
2216                      "start": {
2217                        "line": 32,
2218                        "column": 63,
2219                        "program": "objectDestructuring.ts"
2220                      },
2221                      "end": {
2222                        "line": 32,
2223                        "column": 86,
2224                        "program": "objectDestructuring.ts"
2225                      }
2226                    }
2227                  },
2228                  "loc": {
2229                    "start": {
2230                      "line": 32,
2231                      "column": 13,
2232                      "program": "objectDestructuring.ts"
2233                    },
2234                    "end": {
2235                      "line": 32,
2236                      "column": 86,
2237                      "program": "objectDestructuring.ts"
2238                    }
2239                  }
2240                },
2241                "kind": "init",
2242                "loc": {
2243                  "start": {
2244                    "line": 32,
2245                    "column": 7,
2246                    "program": "objectDestructuring.ts"
2247                  },
2248                  "end": {
2249                    "line": 32,
2250                    "column": 86,
2251                    "program": "objectDestructuring.ts"
2252                  }
2253                }
2254              }
2255            ],
2256            "loc": {
2257              "start": {
2258                "line": 32,
2259                "column": 5,
2260                "program": "objectDestructuring.ts"
2261              },
2262              "end": {
2263                "line": 32,
2264                "column": 88,
2265                "program": "objectDestructuring.ts"
2266              }
2267            }
2268          },
2269          "init": {
2270            "type": "ObjectExpression",
2271            "properties": [
2272              {
2273                "type": "Property",
2274                "method": false,
2275                "shorthand": false,
2276                "computed": false,
2277                "key": {
2278                  "type": "Identifier",
2279                  "name": "prop",
2280                  "decorators": [],
2281                  "loc": {
2282                    "start": {
2283                      "line": 32,
2284                      "column": 93,
2285                      "program": "objectDestructuring.ts"
2286                    },
2287                    "end": {
2288                      "line": 32,
2289                      "column": 97,
2290                      "program": "objectDestructuring.ts"
2291                    }
2292                  }
2293                },
2294                "value": {
2295                  "type": "ObjectExpression",
2296                  "properties": [
2297                    {
2298                      "type": "Property",
2299                      "method": false,
2300                      "shorthand": false,
2301                      "computed": false,
2302                      "key": {
2303                        "type": "Identifier",
2304                        "name": "prop",
2305                        "decorators": [],
2306                        "loc": {
2307                          "start": {
2308                            "line": 32,
2309                            "column": 101,
2310                            "program": "objectDestructuring.ts"
2311                          },
2312                          "end": {
2313                            "line": 32,
2314                            "column": 105,
2315                            "program": "objectDestructuring.ts"
2316                          }
2317                        }
2318                      },
2319                      "value": {
2320                        "type": "ArrayExpression",
2321                        "elements": [
2322                          {
2323                            "type": "NumberLiteral",
2324                            "value": 1,
2325                            "loc": {
2326                              "start": {
2327                                "line": 32,
2328                                "column": 108,
2329                                "program": "objectDestructuring.ts"
2330                              },
2331                              "end": {
2332                                "line": 32,
2333                                "column": 109,
2334                                "program": "objectDestructuring.ts"
2335                              }
2336                            }
2337                          },
2338                          {
2339                            "type": "NumberLiteral",
2340                            "value": 2,
2341                            "loc": {
2342                              "start": {
2343                                "line": 32,
2344                                "column": 111,
2345                                "program": "objectDestructuring.ts"
2346                              },
2347                              "end": {
2348                                "line": 32,
2349                                "column": 112,
2350                                "program": "objectDestructuring.ts"
2351                              }
2352                            }
2353                          },
2354                          {
2355                            "type": "NumberLiteral",
2356                            "value": 3,
2357                            "loc": {
2358                              "start": {
2359                                "line": 32,
2360                                "column": 114,
2361                                "program": "objectDestructuring.ts"
2362                              },
2363                              "end": {
2364                                "line": 32,
2365                                "column": 115,
2366                                "program": "objectDestructuring.ts"
2367                              }
2368                            }
2369                          }
2370                        ],
2371                        "loc": {
2372                          "start": {
2373                            "line": 32,
2374                            "column": 107,
2375                            "program": "objectDestructuring.ts"
2376                          },
2377                          "end": {
2378                            "line": 32,
2379                            "column": 116,
2380                            "program": "objectDestructuring.ts"
2381                          }
2382                        }
2383                      },
2384                      "kind": "init",
2385                      "loc": {
2386                        "start": {
2387                          "line": 32,
2388                          "column": 101,
2389                          "program": "objectDestructuring.ts"
2390                        },
2391                        "end": {
2392                          "line": 32,
2393                          "column": 116,
2394                          "program": "objectDestructuring.ts"
2395                        }
2396                      }
2397                    }
2398                  ],
2399                  "loc": {
2400                    "start": {
2401                      "line": 32,
2402                      "column": 99,
2403                      "program": "objectDestructuring.ts"
2404                    },
2405                    "end": {
2406                      "line": 32,
2407                      "column": 118,
2408                      "program": "objectDestructuring.ts"
2409                    }
2410                  }
2411                },
2412                "kind": "init",
2413                "loc": {
2414                  "start": {
2415                    "line": 32,
2416                    "column": 93,
2417                    "program": "objectDestructuring.ts"
2418                  },
2419                  "end": {
2420                    "line": 32,
2421                    "column": 118,
2422                    "program": "objectDestructuring.ts"
2423                  }
2424                }
2425              }
2426            ],
2427            "loc": {
2428              "start": {
2429                "line": 32,
2430                "column": 91,
2431                "program": "objectDestructuring.ts"
2432              },
2433              "end": {
2434                "line": 32,
2435                "column": 120,
2436                "program": "objectDestructuring.ts"
2437              }
2438            }
2439          },
2440          "loc": {
2441            "start": {
2442              "line": 32,
2443              "column": 5,
2444              "program": "objectDestructuring.ts"
2445            },
2446            "end": {
2447              "line": 32,
2448              "column": 120,
2449              "program": "objectDestructuring.ts"
2450            }
2451          }
2452        }
2453      ],
2454      "kind": "var",
2455      "loc": {
2456        "start": {
2457          "line": 32,
2458          "column": 1,
2459          "program": "objectDestructuring.ts"
2460        },
2461        "end": {
2462          "line": 32,
2463          "column": 121,
2464          "program": "objectDestructuring.ts"
2465        }
2466      }
2467    },
2468    {
2469      "type": "ExpressionStatement",
2470      "expression": {
2471        "type": "AssignmentExpression",
2472        "operator": "=",
2473        "left": {
2474          "type": "Identifier",
2475          "name": "var8",
2476          "decorators": [],
2477          "loc": {
2478            "start": {
2479              "line": 33,
2480              "column": 1,
2481              "program": "objectDestructuring.ts"
2482            },
2483            "end": {
2484              "line": 33,
2485              "column": 5,
2486              "program": "objectDestructuring.ts"
2487            }
2488          }
2489        },
2490        "right": {
2491          "type": "Identifier",
2492          "name": "var6",
2493          "decorators": [],
2494          "loc": {
2495            "start": {
2496              "line": 33,
2497              "column": 8,
2498              "program": "objectDestructuring.ts"
2499            },
2500            "end": {
2501              "line": 33,
2502              "column": 12,
2503              "program": "objectDestructuring.ts"
2504            }
2505          }
2506        },
2507        "loc": {
2508          "start": {
2509            "line": 33,
2510            "column": 1,
2511            "program": "objectDestructuring.ts"
2512          },
2513          "end": {
2514            "line": 33,
2515            "column": 12,
2516            "program": "objectDestructuring.ts"
2517          }
2518        }
2519      },
2520      "loc": {
2521        "start": {
2522          "line": 33,
2523          "column": 1,
2524          "program": "objectDestructuring.ts"
2525        },
2526        "end": {
2527          "line": 33,
2528          "column": 13,
2529          "program": "objectDestructuring.ts"
2530        }
2531      }
2532    },
2533    {
2534      "type": "ExpressionStatement",
2535      "expression": {
2536        "type": "AssignmentExpression",
2537        "operator": "=",
2538        "left": {
2539          "type": "Identifier",
2540          "name": "var9",
2541          "decorators": [],
2542          "loc": {
2543            "start": {
2544              "line": 34,
2545              "column": 1,
2546              "program": "objectDestructuring.ts"
2547            },
2548            "end": {
2549              "line": 34,
2550              "column": 5,
2551              "program": "objectDestructuring.ts"
2552            }
2553          }
2554        },
2555        "right": {
2556          "type": "NumberLiteral",
2557          "value": 1,
2558          "loc": {
2559            "start": {
2560              "line": 34,
2561              "column": 8,
2562              "program": "objectDestructuring.ts"
2563            },
2564            "end": {
2565              "line": 34,
2566              "column": 9,
2567              "program": "objectDestructuring.ts"
2568            }
2569          }
2570        },
2571        "loc": {
2572          "start": {
2573            "line": 34,
2574            "column": 1,
2575            "program": "objectDestructuring.ts"
2576          },
2577          "end": {
2578            "line": 34,
2579            "column": 9,
2580            "program": "objectDestructuring.ts"
2581          }
2582        }
2583      },
2584      "loc": {
2585        "start": {
2586          "line": 34,
2587          "column": 1,
2588          "program": "objectDestructuring.ts"
2589        },
2590        "end": {
2591          "line": 34,
2592          "column": 10,
2593          "program": "objectDestructuring.ts"
2594        }
2595      }
2596    },
2597    {
2598      "type": "ExpressionStatement",
2599      "expression": {
2600        "type": "AssignmentExpression",
2601        "operator": "=",
2602        "left": {
2603          "type": "Identifier",
2604          "name": "var9",
2605          "decorators": [],
2606          "loc": {
2607            "start": {
2608              "line": 35,
2609              "column": 1,
2610              "program": "objectDestructuring.ts"
2611            },
2612            "end": {
2613              "line": 35,
2614              "column": 5,
2615              "program": "objectDestructuring.ts"
2616            }
2617          }
2618        },
2619        "right": {
2620          "type": "ObjectExpression",
2621          "properties": [
2622            {
2623              "type": "Property",
2624              "method": false,
2625              "shorthand": false,
2626              "computed": false,
2627              "key": {
2628                "type": "Identifier",
2629                "name": "a",
2630                "decorators": [],
2631                "loc": {
2632                  "start": {
2633                    "line": 35,
2634                    "column": 10,
2635                    "program": "objectDestructuring.ts"
2636                  },
2637                  "end": {
2638                    "line": 35,
2639                    "column": 11,
2640                    "program": "objectDestructuring.ts"
2641                  }
2642                }
2643              },
2644              "value": {
2645                "type": "NumberLiteral",
2646                "value": 1,
2647                "loc": {
2648                  "start": {
2649                    "line": 35,
2650                    "column": 13,
2651                    "program": "objectDestructuring.ts"
2652                  },
2653                  "end": {
2654                    "line": 35,
2655                    "column": 14,
2656                    "program": "objectDestructuring.ts"
2657                  }
2658                }
2659              },
2660              "kind": "init",
2661              "loc": {
2662                "start": {
2663                  "line": 35,
2664                  "column": 10,
2665                  "program": "objectDestructuring.ts"
2666                },
2667                "end": {
2668                  "line": 35,
2669                  "column": 14,
2670                  "program": "objectDestructuring.ts"
2671                }
2672              }
2673            },
2674            {
2675              "type": "Property",
2676              "method": false,
2677              "shorthand": false,
2678              "computed": false,
2679              "key": {
2680                "type": "Identifier",
2681                "name": "b",
2682                "decorators": [],
2683                "loc": {
2684                  "start": {
2685                    "line": 35,
2686                    "column": 16,
2687                    "program": "objectDestructuring.ts"
2688                  },
2689                  "end": {
2690                    "line": 35,
2691                    "column": 17,
2692                    "program": "objectDestructuring.ts"
2693                  }
2694                }
2695              },
2696              "value": {
2697                "type": "StringLiteral",
2698                "value": "foo",
2699                "loc": {
2700                  "start": {
2701                    "line": 35,
2702                    "column": 19,
2703                    "program": "objectDestructuring.ts"
2704                  },
2705                  "end": {
2706                    "line": 35,
2707                    "column": 24,
2708                    "program": "objectDestructuring.ts"
2709                  }
2710                }
2711              },
2712              "kind": "init",
2713              "loc": {
2714                "start": {
2715                  "line": 35,
2716                  "column": 16,
2717                  "program": "objectDestructuring.ts"
2718                },
2719                "end": {
2720                  "line": 35,
2721                  "column": 24,
2722                  "program": "objectDestructuring.ts"
2723                }
2724              }
2725            }
2726          ],
2727          "loc": {
2728            "start": {
2729              "line": 35,
2730              "column": 8,
2731              "program": "objectDestructuring.ts"
2732            },
2733            "end": {
2734              "line": 35,
2735              "column": 26,
2736              "program": "objectDestructuring.ts"
2737            }
2738          }
2739        },
2740        "loc": {
2741          "start": {
2742            "line": 35,
2743            "column": 1,
2744            "program": "objectDestructuring.ts"
2745          },
2746          "end": {
2747            "line": 35,
2748            "column": 26,
2749            "program": "objectDestructuring.ts"
2750          }
2751        }
2752      },
2753      "loc": {
2754        "start": {
2755          "line": 35,
2756          "column": 1,
2757          "program": "objectDestructuring.ts"
2758        },
2759        "end": {
2760          "line": 35,
2761          "column": 27,
2762          "program": "objectDestructuring.ts"
2763        }
2764      }
2765    },
2766    {
2767      "type": "ExpressionStatement",
2768      "expression": {
2769        "type": "AssignmentExpression",
2770        "operator": "=",
2771        "left": {
2772          "type": "Identifier",
2773          "name": "var9",
2774          "decorators": [],
2775          "loc": {
2776            "start": {
2777              "line": 36,
2778              "column": 1,
2779              "program": "objectDestructuring.ts"
2780            },
2781            "end": {
2782              "line": 36,
2783              "column": 5,
2784              "program": "objectDestructuring.ts"
2785            }
2786          }
2787        },
2788        "right": {
2789          "type": "BooleanLiteral",
2790          "value": false,
2791          "loc": {
2792            "start": {
2793              "line": 36,
2794              "column": 8,
2795              "program": "objectDestructuring.ts"
2796            },
2797            "end": {
2798              "line": 36,
2799              "column": 13,
2800              "program": "objectDestructuring.ts"
2801            }
2802          }
2803        },
2804        "loc": {
2805          "start": {
2806            "line": 36,
2807            "column": 1,
2808            "program": "objectDestructuring.ts"
2809          },
2810          "end": {
2811            "line": 36,
2812            "column": 13,
2813            "program": "objectDestructuring.ts"
2814          }
2815        }
2816      },
2817      "loc": {
2818        "start": {
2819          "line": 36,
2820          "column": 1,
2821          "program": "objectDestructuring.ts"
2822        },
2823        "end": {
2824          "line": 36,
2825          "column": 14,
2826          "program": "objectDestructuring.ts"
2827        }
2828      }
2829    },
2830    {
2831      "type": "TSInterfaceDeclaration",
2832      "body": {
2833        "type": "TSInterfaceBody",
2834        "body": [
2835          {
2836            "type": "TSPropertySignature",
2837            "computed": false,
2838            "optional": false,
2839            "readonly": false,
2840            "key": {
2841              "type": "Identifier",
2842              "name": "var11",
2843              "decorators": [],
2844              "loc": {
2845                "start": {
2846                  "line": 39,
2847                  "column": 5,
2848                  "program": "objectDestructuring.ts"
2849                },
2850                "end": {
2851                  "line": 39,
2852                  "column": 10,
2853                  "program": "objectDestructuring.ts"
2854                }
2855              }
2856            },
2857            "typeAnnotation": {
2858              "type": "TSNumberKeyword",
2859              "loc": {
2860                "start": {
2861                  "line": 39,
2862                  "column": 12,
2863                  "program": "objectDestructuring.ts"
2864                },
2865                "end": {
2866                  "line": 39,
2867                  "column": 18,
2868                  "program": "objectDestructuring.ts"
2869                }
2870              }
2871            },
2872            "loc": {
2873              "start": {
2874                "line": 39,
2875                "column": 5,
2876                "program": "objectDestructuring.ts"
2877              },
2878              "end": {
2879                "line": 39,
2880                "column": 19,
2881                "program": "objectDestructuring.ts"
2882              }
2883            }
2884          },
2885          {
2886            "type": "TSPropertySignature",
2887            "computed": false,
2888            "optional": false,
2889            "readonly": false,
2890            "key": {
2891              "type": "Identifier",
2892              "name": "b",
2893              "decorators": [],
2894              "loc": {
2895                "start": {
2896                  "line": 40,
2897                  "column": 5,
2898                  "program": "objectDestructuring.ts"
2899                },
2900                "end": {
2901                  "line": 40,
2902                  "column": 6,
2903                  "program": "objectDestructuring.ts"
2904                }
2905              }
2906            },
2907            "typeAnnotation": {
2908              "type": "TSStringKeyword",
2909              "loc": {
2910                "start": {
2911                  "line": 40,
2912                  "column": 8,
2913                  "program": "objectDestructuring.ts"
2914                },
2915                "end": {
2916                  "line": 40,
2917                  "column": 14,
2918                  "program": "objectDestructuring.ts"
2919                }
2920              }
2921            },
2922            "loc": {
2923              "start": {
2924                "line": 40,
2925                "column": 5,
2926                "program": "objectDestructuring.ts"
2927              },
2928              "end": {
2929                "line": 40,
2930                "column": 15,
2931                "program": "objectDestructuring.ts"
2932              }
2933            }
2934          },
2935          {
2936            "type": "TSCallSignatureDeclaration",
2937            "params": [
2938              {
2939                "type": "Identifier",
2940                "name": "a",
2941                "typeAnnotation": {
2942                  "type": "TSNumberKeyword",
2943                  "loc": {
2944                    "start": {
2945                      "line": 41,
2946                      "column": 9,
2947                      "program": "objectDestructuring.ts"
2948                    },
2949                    "end": {
2950                      "line": 41,
2951                      "column": 15,
2952                      "program": "objectDestructuring.ts"
2953                    }
2954                  }
2955                },
2956                "decorators": [],
2957                "loc": {
2958                  "start": {
2959                    "line": 41,
2960                    "column": 6,
2961                    "program": "objectDestructuring.ts"
2962                  },
2963                  "end": {
2964                    "line": 41,
2965                    "column": 7,
2966                    "program": "objectDestructuring.ts"
2967                  }
2968                }
2969              },
2970              {
2971                "type": "Identifier",
2972                "name": "b",
2973                "typeAnnotation": {
2974                  "type": "TSArrayType",
2975                  "elementType": {
2976                    "type": "TSStringKeyword",
2977                    "loc": {
2978                      "start": {
2979                        "line": 41,
2980                        "column": 20,
2981                        "program": "objectDestructuring.ts"
2982                      },
2983                      "end": {
2984                        "line": 41,
2985                        "column": 26,
2986                        "program": "objectDestructuring.ts"
2987                      }
2988                    }
2989                  },
2990                  "annotations": [],
2991                  "loc": {
2992                    "start": {
2993                      "line": 41,
2994                      "column": 20,
2995                      "program": "objectDestructuring.ts"
2996                    },
2997                    "end": {
2998                      "line": 41,
2999                      "column": 28,
3000                      "program": "objectDestructuring.ts"
3001                    }
3002                  }
3003                },
3004                "decorators": [],
3005                "loc": {
3006                  "start": {
3007                    "line": 41,
3008                    "column": 17,
3009                    "program": "objectDestructuring.ts"
3010                  },
3011                  "end": {
3012                    "line": 41,
3013                    "column": 18,
3014                    "program": "objectDestructuring.ts"
3015                  }
3016                }
3017              }
3018            ],
3019            "returnType": {
3020              "type": "TSBooleanKeyword",
3021              "loc": {
3022                "start": {
3023                  "line": 41,
3024                  "column": 31,
3025                  "program": "objectDestructuring.ts"
3026                },
3027                "end": {
3028                  "line": 41,
3029                  "column": 38,
3030                  "program": "objectDestructuring.ts"
3031                }
3032              }
3033            },
3034            "loc": {
3035              "start": {
3036                "line": 41,
3037                "column": 5,
3038                "program": "objectDestructuring.ts"
3039              },
3040              "end": {
3041                "line": 41,
3042                "column": 39,
3043                "program": "objectDestructuring.ts"
3044              }
3045            }
3046          }
3047        ],
3048        "loc": {
3049          "start": {
3050            "line": 38,
3051            "column": 22,
3052            "program": "objectDestructuring.ts"
3053          },
3054          "end": {
3055            "line": 42,
3056            "column": 2,
3057            "program": "objectDestructuring.ts"
3058          }
3059        }
3060      },
3061      "id": {
3062        "type": "Identifier",
3063        "name": "interface1",
3064        "decorators": [],
3065        "loc": {
3066          "start": {
3067            "line": 38,
3068            "column": 11,
3069            "program": "objectDestructuring.ts"
3070          },
3071          "end": {
3072            "line": 38,
3073            "column": 21,
3074            "program": "objectDestructuring.ts"
3075          }
3076        }
3077      },
3078      "extends": [],
3079      "loc": {
3080        "start": {
3081          "line": 38,
3082          "column": 1,
3083          "program": "objectDestructuring.ts"
3084        },
3085        "end": {
3086          "line": 42,
3087          "column": 2,
3088          "program": "objectDestructuring.ts"
3089        }
3090      }
3091    },
3092    {
3093      "type": "VariableDeclaration",
3094      "declarations": [
3095        {
3096          "type": "VariableDeclarator",
3097          "id": {
3098            "type": "Identifier",
3099            "name": "var10",
3100            "typeAnnotation": {
3101              "type": "TSTypeReference",
3102              "typeName": {
3103                "type": "Identifier",
3104                "name": "interface1",
3105                "decorators": [],
3106                "loc": {
3107                  "start": {
3108                    "line": 44,
3109                    "column": 12,
3110                    "program": "objectDestructuring.ts"
3111                  },
3112                  "end": {
3113                    "line": 44,
3114                    "column": 22,
3115                    "program": "objectDestructuring.ts"
3116                  }
3117                }
3118              },
3119              "loc": {
3120                "start": {
3121                  "line": 44,
3122                  "column": 12,
3123                  "program": "objectDestructuring.ts"
3124                },
3125                "end": {
3126                  "line": 44,
3127                  "column": 22,
3128                  "program": "objectDestructuring.ts"
3129                }
3130              }
3131            },
3132            "decorators": [],
3133            "loc": {
3134              "start": {
3135                "line": 44,
3136                "column": 5,
3137                "program": "objectDestructuring.ts"
3138              },
3139              "end": {
3140                "line": 44,
3141                "column": 10,
3142                "program": "objectDestructuring.ts"
3143              }
3144            }
3145          },
3146          "init": null,
3147          "loc": {
3148            "start": {
3149              "line": 44,
3150              "column": 5,
3151              "program": "objectDestructuring.ts"
3152            },
3153            "end": {
3154              "line": 44,
3155              "column": 10,
3156              "program": "objectDestructuring.ts"
3157            }
3158          }
3159        }
3160      ],
3161      "kind": "var",
3162      "loc": {
3163        "start": {
3164          "line": 44,
3165          "column": 1,
3166          "program": "objectDestructuring.ts"
3167        },
3168        "end": {
3169          "line": 44,
3170          "column": 23,
3171          "program": "objectDestructuring.ts"
3172        }
3173      }
3174    },
3175    {
3176      "type": "VariableDeclaration",
3177      "declarations": [
3178        {
3179          "type": "VariableDeclarator",
3180          "id": {
3181            "type": "ObjectPattern",
3182            "properties": [
3183              {
3184                "type": "Property",
3185                "method": false,
3186                "shorthand": true,
3187                "computed": false,
3188                "key": {
3189                  "type": "Identifier",
3190                  "name": "var11",
3191                  "decorators": [],
3192                  "loc": {
3193                    "start": {
3194                      "line": 45,
3195                      "column": 7,
3196                      "program": "objectDestructuring.ts"
3197                    },
3198                    "end": {
3199                      "line": 45,
3200                      "column": 12,
3201                      "program": "objectDestructuring.ts"
3202                    }
3203                  }
3204                },
3205                "value": {
3206                  "type": "Identifier",
3207                  "name": "var11",
3208                  "decorators": [],
3209                  "loc": {
3210                    "start": {
3211                      "line": 45,
3212                      "column": 7,
3213                      "program": "objectDestructuring.ts"
3214                    },
3215                    "end": {
3216                      "line": 45,
3217                      "column": 12,
3218                      "program": "objectDestructuring.ts"
3219                    }
3220                  }
3221                },
3222                "kind": "init",
3223                "loc": {
3224                  "start": {
3225                    "line": 45,
3226                    "column": 7,
3227                    "program": "objectDestructuring.ts"
3228                  },
3229                  "end": {
3230                    "line": 45,
3231                    "column": 12,
3232                    "program": "objectDestructuring.ts"
3233                  }
3234                }
3235              },
3236              {
3237                "type": "RestElement",
3238                "argument": {
3239                  "type": "Identifier",
3240                  "name": "var12",
3241                  "decorators": [],
3242                  "loc": {
3243                    "start": {
3244                      "line": 45,
3245                      "column": 17,
3246                      "program": "objectDestructuring.ts"
3247                    },
3248                    "end": {
3249                      "line": 45,
3250                      "column": 22,
3251                      "program": "objectDestructuring.ts"
3252                    }
3253                  }
3254                },
3255                "loc": {
3256                  "start": {
3257                    "line": 45,
3258                    "column": 14,
3259                    "program": "objectDestructuring.ts"
3260                  },
3261                  "end": {
3262                    "line": 45,
3263                    "column": 22,
3264                    "program": "objectDestructuring.ts"
3265                  }
3266                }
3267              }
3268            ],
3269            "loc": {
3270              "start": {
3271                "line": 45,
3272                "column": 5,
3273                "program": "objectDestructuring.ts"
3274              },
3275              "end": {
3276                "line": 45,
3277                "column": 24,
3278                "program": "objectDestructuring.ts"
3279              }
3280            }
3281          },
3282          "init": {
3283            "type": "Identifier",
3284            "name": "var10",
3285            "decorators": [],
3286            "loc": {
3287              "start": {
3288                "line": 45,
3289                "column": 27,
3290                "program": "objectDestructuring.ts"
3291              },
3292              "end": {
3293                "line": 45,
3294                "column": 32,
3295                "program": "objectDestructuring.ts"
3296              }
3297            }
3298          },
3299          "loc": {
3300            "start": {
3301              "line": 45,
3302              "column": 5,
3303              "program": "objectDestructuring.ts"
3304            },
3305            "end": {
3306              "line": 45,
3307              "column": 32,
3308              "program": "objectDestructuring.ts"
3309            }
3310          }
3311        }
3312      ],
3313      "kind": "var",
3314      "loc": {
3315        "start": {
3316          "line": 45,
3317          "column": 1,
3318          "program": "objectDestructuring.ts"
3319        },
3320        "end": {
3321          "line": 45,
3322          "column": 33,
3323          "program": "objectDestructuring.ts"
3324        }
3325      }
3326    },
3327    {
3328      "type": "ExpressionStatement",
3329      "expression": {
3330        "type": "AssignmentExpression",
3331        "operator": "=",
3332        "left": {
3333          "type": "Identifier",
3334          "name": "var11",
3335          "decorators": [],
3336          "loc": {
3337            "start": {
3338              "line": 46,
3339              "column": 1,
3340              "program": "objectDestructuring.ts"
3341            },
3342            "end": {
3343              "line": 46,
3344              "column": 6,
3345              "program": "objectDestructuring.ts"
3346            }
3347          }
3348        },
3349        "right": {
3350          "type": "NumberLiteral",
3351          "value": 12,
3352          "loc": {
3353            "start": {
3354              "line": 46,
3355              "column": 9,
3356              "program": "objectDestructuring.ts"
3357            },
3358            "end": {
3359              "line": 46,
3360              "column": 11,
3361              "program": "objectDestructuring.ts"
3362            }
3363          }
3364        },
3365        "loc": {
3366          "start": {
3367            "line": 46,
3368            "column": 1,
3369            "program": "objectDestructuring.ts"
3370          },
3371          "end": {
3372            "line": 46,
3373            "column": 11,
3374            "program": "objectDestructuring.ts"
3375          }
3376        }
3377      },
3378      "loc": {
3379        "start": {
3380          "line": 46,
3381          "column": 1,
3382          "program": "objectDestructuring.ts"
3383        },
3384        "end": {
3385          "line": 46,
3386          "column": 12,
3387          "program": "objectDestructuring.ts"
3388        }
3389      }
3390    },
3391    {
3392      "type": "ExpressionStatement",
3393      "expression": {
3394        "type": "AssignmentExpression",
3395        "operator": "=",
3396        "left": {
3397          "type": "Identifier",
3398          "name": "var12",
3399          "decorators": [],
3400          "loc": {
3401            "start": {
3402              "line": 47,
3403              "column": 1,
3404              "program": "objectDestructuring.ts"
3405            },
3406            "end": {
3407              "line": 47,
3408              "column": 6,
3409              "program": "objectDestructuring.ts"
3410            }
3411          }
3412        },
3413        "right": {
3414          "type": "ObjectExpression",
3415          "properties": [
3416            {
3417              "type": "Property",
3418              "method": false,
3419              "shorthand": false,
3420              "computed": false,
3421              "key": {
3422                "type": "Identifier",
3423                "name": "b",
3424                "decorators": [],
3425                "loc": {
3426                  "start": {
3427                    "line": 47,
3428                    "column": 11,
3429                    "program": "objectDestructuring.ts"
3430                  },
3431                  "end": {
3432                    "line": 47,
3433                    "column": 12,
3434                    "program": "objectDestructuring.ts"
3435                  }
3436                }
3437              },
3438              "value": {
3439                "type": "StringLiteral",
3440                "value": "foo",
3441                "loc": {
3442                  "start": {
3443                    "line": 47,
3444                    "column": 14,
3445                    "program": "objectDestructuring.ts"
3446                  },
3447                  "end": {
3448                    "line": 47,
3449                    "column": 19,
3450                    "program": "objectDestructuring.ts"
3451                  }
3452                }
3453              },
3454              "kind": "init",
3455              "loc": {
3456                "start": {
3457                  "line": 47,
3458                  "column": 11,
3459                  "program": "objectDestructuring.ts"
3460                },
3461                "end": {
3462                  "line": 47,
3463                  "column": 19,
3464                  "program": "objectDestructuring.ts"
3465                }
3466              }
3467            }
3468          ],
3469          "loc": {
3470            "start": {
3471              "line": 47,
3472              "column": 9,
3473              "program": "objectDestructuring.ts"
3474            },
3475            "end": {
3476              "line": 47,
3477              "column": 21,
3478              "program": "objectDestructuring.ts"
3479            }
3480          }
3481        },
3482        "loc": {
3483          "start": {
3484            "line": 47,
3485            "column": 1,
3486            "program": "objectDestructuring.ts"
3487          },
3488          "end": {
3489            "line": 47,
3490            "column": 21,
3491            "program": "objectDestructuring.ts"
3492          }
3493        }
3494      },
3495      "loc": {
3496        "start": {
3497          "line": 47,
3498          "column": 1,
3499          "program": "objectDestructuring.ts"
3500        },
3501        "end": {
3502          "line": 47,
3503          "column": 22,
3504          "program": "objectDestructuring.ts"
3505        }
3506      }
3507    },
3508    {
3509      "type": "VariableDeclaration",
3510      "declarations": [
3511        {
3512          "type": "VariableDeclarator",
3513          "id": {
3514            "type": "ObjectPattern",
3515            "properties": [
3516              {
3517                "type": "Property",
3518                "method": false,
3519                "shorthand": true,
3520                "computed": false,
3521                "key": {
3522                  "type": "Identifier",
3523                  "name": "var13",
3524                  "decorators": [],
3525                  "loc": {
3526                    "start": {
3527                      "line": 49,
3528                      "column": 7,
3529                      "program": "objectDestructuring.ts"
3530                    },
3531                    "end": {
3532                      "line": 49,
3533                      "column": 12,
3534                      "program": "objectDestructuring.ts"
3535                    }
3536                  }
3537                },
3538                "value": {
3539                  "type": "AssignmentPattern",
3540                  "left": {
3541                    "type": "Identifier",
3542                    "name": "var13",
3543                    "decorators": [],
3544                    "loc": {
3545                      "start": {
3546                        "line": 49,
3547                        "column": 7,
3548                        "program": "objectDestructuring.ts"
3549                      },
3550                      "end": {
3551                        "line": 49,
3552                        "column": 12,
3553                        "program": "objectDestructuring.ts"
3554                      }
3555                    }
3556                  },
3557                  "right": {
3558                    "type": "NumberLiteral",
3559                    "value": 6,
3560                    "loc": {
3561                      "start": {
3562                        "line": 49,
3563                        "column": 15,
3564                        "program": "objectDestructuring.ts"
3565                      },
3566                      "end": {
3567                        "line": 49,
3568                        "column": 16,
3569                        "program": "objectDestructuring.ts"
3570                      }
3571                    }
3572                  },
3573                  "loc": {
3574                    "start": {
3575                      "line": 49,
3576                      "column": 7,
3577                      "program": "objectDestructuring.ts"
3578                    },
3579                    "end": {
3580                      "line": 49,
3581                      "column": 16,
3582                      "program": "objectDestructuring.ts"
3583                    }
3584                  }
3585                },
3586                "kind": "init",
3587                "loc": {
3588                  "start": {
3589                    "line": 49,
3590                    "column": 7,
3591                    "program": "objectDestructuring.ts"
3592                  },
3593                  "end": {
3594                    "line": 49,
3595                    "column": 16,
3596                    "program": "objectDestructuring.ts"
3597                  }
3598                }
3599              },
3600              {
3601                "type": "Property",
3602                "method": false,
3603                "shorthand": true,
3604                "computed": false,
3605                "key": {
3606                  "type": "Identifier",
3607                  "name": "var14",
3608                  "decorators": [],
3609                  "loc": {
3610                    "start": {
3611                      "line": 49,
3612                      "column": 18,
3613                      "program": "objectDestructuring.ts"
3614                    },
3615                    "end": {
3616                      "line": 49,
3617                      "column": 23,
3618                      "program": "objectDestructuring.ts"
3619                    }
3620                  }
3621                },
3622                "value": {
3623                  "type": "AssignmentPattern",
3624                  "left": {
3625                    "type": "Identifier",
3626                    "name": "var14",
3627                    "decorators": [],
3628                    "loc": {
3629                      "start": {
3630                        "line": 49,
3631                        "column": 18,
3632                        "program": "objectDestructuring.ts"
3633                      },
3634                      "end": {
3635                        "line": 49,
3636                        "column": 23,
3637                        "program": "objectDestructuring.ts"
3638                      }
3639                    }
3640                  },
3641                  "right": {
3642                    "type": "BooleanLiteral",
3643                    "value": true,
3644                    "loc": {
3645                      "start": {
3646                        "line": 49,
3647                        "column": 26,
3648                        "program": "objectDestructuring.ts"
3649                      },
3650                      "end": {
3651                        "line": 49,
3652                        "column": 30,
3653                        "program": "objectDestructuring.ts"
3654                      }
3655                    }
3656                  },
3657                  "loc": {
3658                    "start": {
3659                      "line": 49,
3660                      "column": 18,
3661                      "program": "objectDestructuring.ts"
3662                    },
3663                    "end": {
3664                      "line": 49,
3665                      "column": 30,
3666                      "program": "objectDestructuring.ts"
3667                    }
3668                  }
3669                },
3670                "kind": "init",
3671                "loc": {
3672                  "start": {
3673                    "line": 49,
3674                    "column": 18,
3675                    "program": "objectDestructuring.ts"
3676                  },
3677                  "end": {
3678                    "line": 49,
3679                    "column": 30,
3680                    "program": "objectDestructuring.ts"
3681                  }
3682                }
3683              }
3684            ],
3685            "typeAnnotation": {
3686              "type": "TSTypeLiteral",
3687              "members": [
3688                {
3689                  "type": "TSPropertySignature",
3690                  "computed": false,
3691                  "optional": false,
3692                  "readonly": false,
3693                  "key": {
3694                    "type": "Identifier",
3695                    "name": "var13",
3696                    "decorators": [],
3697                    "loc": {
3698                      "start": {
3699                        "line": 49,
3700                        "column": 36,
3701                        "program": "objectDestructuring.ts"
3702                      },
3703                      "end": {
3704                        "line": 49,
3705                        "column": 41,
3706                        "program": "objectDestructuring.ts"
3707                      }
3708                    }
3709                  },
3710                  "typeAnnotation": {
3711                    "type": "TSUnionType",
3712                    "types": [
3713                      {
3714                        "type": "TSNumberKeyword",
3715                        "loc": {
3716                          "start": {
3717                            "line": 49,
3718                            "column": 43,
3719                            "program": "objectDestructuring.ts"
3720                          },
3721                          "end": {
3722                            "line": 49,
3723                            "column": 49,
3724                            "program": "objectDestructuring.ts"
3725                          }
3726                        }
3727                      },
3728                      {
3729                        "type": "TSStringKeyword",
3730                        "loc": {
3731                          "start": {
3732                            "line": 49,
3733                            "column": 52,
3734                            "program": "objectDestructuring.ts"
3735                          },
3736                          "end": {
3737                            "line": 49,
3738                            "column": 58,
3739                            "program": "objectDestructuring.ts"
3740                          }
3741                        }
3742                      }
3743                    ],
3744                    "loc": {
3745                      "start": {
3746                        "line": 49,
3747                        "column": 43,
3748                        "program": "objectDestructuring.ts"
3749                      },
3750                      "end": {
3751                        "line": 49,
3752                        "column": 58,
3753                        "program": "objectDestructuring.ts"
3754                      }
3755                    }
3756                  },
3757                  "loc": {
3758                    "start": {
3759                      "line": 49,
3760                      "column": 36,
3761                      "program": "objectDestructuring.ts"
3762                    },
3763                    "end": {
3764                      "line": 49,
3765                      "column": 59,
3766                      "program": "objectDestructuring.ts"
3767                    }
3768                  }
3769                },
3770                {
3771                  "type": "TSPropertySignature",
3772                  "computed": false,
3773                  "optional": false,
3774                  "readonly": false,
3775                  "key": {
3776                    "type": "Identifier",
3777                    "name": "var14",
3778                    "decorators": [],
3779                    "loc": {
3780                      "start": {
3781                        "line": 49,
3782                        "column": 60,
3783                        "program": "objectDestructuring.ts"
3784                      },
3785                      "end": {
3786                        "line": 49,
3787                        "column": 65,
3788                        "program": "objectDestructuring.ts"
3789                      }
3790                    }
3791                  },
3792                  "typeAnnotation": {
3793                    "type": "TSUnionType",
3794                    "types": [
3795                      {
3796                        "type": "TSBooleanKeyword",
3797                        "loc": {
3798                          "start": {
3799                            "line": 49,
3800                            "column": 67,
3801                            "program": "objectDestructuring.ts"
3802                          },
3803                          "end": {
3804                            "line": 49,
3805                            "column": 74,
3806                            "program": "objectDestructuring.ts"
3807                          }
3808                        }
3809                      },
3810                      {
3811                        "type": "TSArrayType",
3812                        "elementType": {
3813                          "type": "TSNumberKeyword",
3814                          "loc": {
3815                            "start": {
3816                              "line": 49,
3817                              "column": 77,
3818                              "program": "objectDestructuring.ts"
3819                            },
3820                            "end": {
3821                              "line": 49,
3822                              "column": 83,
3823                              "program": "objectDestructuring.ts"
3824                            }
3825                          }
3826                        },
3827                        "annotations": [],
3828                        "loc": {
3829                          "start": {
3830                            "line": 49,
3831                            "column": 77,
3832                            "program": "objectDestructuring.ts"
3833                          },
3834                          "end": {
3835                            "line": 49,
3836                            "column": 85,
3837                            "program": "objectDestructuring.ts"
3838                          }
3839                        }
3840                      }
3841                    ],
3842                    "loc": {
3843                      "start": {
3844                        "line": 49,
3845                        "column": 67,
3846                        "program": "objectDestructuring.ts"
3847                      },
3848                      "end": {
3849                        "line": 49,
3850                        "column": 85,
3851                        "program": "objectDestructuring.ts"
3852                      }
3853                    }
3854                  },
3855                  "loc": {
3856                    "start": {
3857                      "line": 49,
3858                      "column": 60,
3859                      "program": "objectDestructuring.ts"
3860                    },
3861                    "end": {
3862                      "line": 49,
3863                      "column": 87,
3864                      "program": "objectDestructuring.ts"
3865                    }
3866                  }
3867                }
3868              ],
3869              "loc": {
3870                "start": {
3871                  "line": 49,
3872                  "column": 34,
3873                  "program": "objectDestructuring.ts"
3874                },
3875                "end": {
3876                  "line": 49,
3877                  "column": 87,
3878                  "program": "objectDestructuring.ts"
3879                }
3880              }
3881            },
3882            "loc": {
3883              "start": {
3884                "line": 49,
3885                "column": 5,
3886                "program": "objectDestructuring.ts"
3887              },
3888              "end": {
3889                "line": 49,
3890                "column": 32,
3891                "program": "objectDestructuring.ts"
3892              }
3893            }
3894          },
3895          "init": {
3896            "type": "ObjectExpression",
3897            "properties": [
3898              {
3899                "type": "Property",
3900                "method": false,
3901                "shorthand": false,
3902                "computed": false,
3903                "key": {
3904                  "type": "Identifier",
3905                  "name": "var13",
3906                  "decorators": [],
3907                  "loc": {
3908                    "start": {
3909                      "line": 49,
3910                      "column": 92,
3911                      "program": "objectDestructuring.ts"
3912                    },
3913                    "end": {
3914                      "line": 49,
3915                      "column": 97,
3916                      "program": "objectDestructuring.ts"
3917                    }
3918                  }
3919                },
3920                "value": {
3921                  "type": "StringLiteral",
3922                  "value": "foo",
3923                  "loc": {
3924                    "start": {
3925                      "line": 49,
3926                      "column": 99,
3927                      "program": "objectDestructuring.ts"
3928                    },
3929                    "end": {
3930                      "line": 49,
3931                      "column": 104,
3932                      "program": "objectDestructuring.ts"
3933                    }
3934                  }
3935                },
3936                "kind": "init",
3937                "loc": {
3938                  "start": {
3939                    "line": 49,
3940                    "column": 92,
3941                    "program": "objectDestructuring.ts"
3942                  },
3943                  "end": {
3944                    "line": 49,
3945                    "column": 104,
3946                    "program": "objectDestructuring.ts"
3947                  }
3948                }
3949              },
3950              {
3951                "type": "Property",
3952                "method": false,
3953                "shorthand": false,
3954                "computed": false,
3955                "key": {
3956                  "type": "Identifier",
3957                  "name": "var14",
3958                  "decorators": [],
3959                  "loc": {
3960                    "start": {
3961                      "line": 49,
3962                      "column": 106,
3963                      "program": "objectDestructuring.ts"
3964                    },
3965                    "end": {
3966                      "line": 49,
3967                      "column": 111,
3968                      "program": "objectDestructuring.ts"
3969                    }
3970                  }
3971                },
3972                "value": {
3973                  "type": "ArrayExpression",
3974                  "elements": [
3975                    {
3976                      "type": "NumberLiteral",
3977                      "value": 1,
3978                      "loc": {
3979                        "start": {
3980                          "line": 49,
3981                          "column": 114,
3982                          "program": "objectDestructuring.ts"
3983                        },
3984                        "end": {
3985                          "line": 49,
3986                          "column": 115,
3987                          "program": "objectDestructuring.ts"
3988                        }
3989                      }
3990                    },
3991                    {
3992                      "type": "NumberLiteral",
3993                      "value": 2,
3994                      "loc": {
3995                        "start": {
3996                          "line": 49,
3997                          "column": 117,
3998                          "program": "objectDestructuring.ts"
3999                        },
4000                        "end": {
4001                          "line": 49,
4002                          "column": 118,
4003                          "program": "objectDestructuring.ts"
4004                        }
4005                      }
4006                    },
4007                    {
4008                      "type": "NumberLiteral",
4009                      "value": 3,
4010                      "loc": {
4011                        "start": {
4012                          "line": 49,
4013                          "column": 120,
4014                          "program": "objectDestructuring.ts"
4015                        },
4016                        "end": {
4017                          "line": 49,
4018                          "column": 121,
4019                          "program": "objectDestructuring.ts"
4020                        }
4021                      }
4022                    }
4023                  ],
4024                  "loc": {
4025                    "start": {
4026                      "line": 49,
4027                      "column": 113,
4028                      "program": "objectDestructuring.ts"
4029                    },
4030                    "end": {
4031                      "line": 49,
4032                      "column": 122,
4033                      "program": "objectDestructuring.ts"
4034                    }
4035                  }
4036                },
4037                "kind": "init",
4038                "loc": {
4039                  "start": {
4040                    "line": 49,
4041                    "column": 106,
4042                    "program": "objectDestructuring.ts"
4043                  },
4044                  "end": {
4045                    "line": 49,
4046                    "column": 122,
4047                    "program": "objectDestructuring.ts"
4048                  }
4049                }
4050              }
4051            ],
4052            "loc": {
4053              "start": {
4054                "line": 49,
4055                "column": 90,
4056                "program": "objectDestructuring.ts"
4057              },
4058              "end": {
4059                "line": 49,
4060                "column": 124,
4061                "program": "objectDestructuring.ts"
4062              }
4063            }
4064          },
4065          "loc": {
4066            "start": {
4067              "line": 49,
4068              "column": 5,
4069              "program": "objectDestructuring.ts"
4070            },
4071            "end": {
4072              "line": 49,
4073              "column": 124,
4074              "program": "objectDestructuring.ts"
4075            }
4076          }
4077        }
4078      ],
4079      "kind": "var",
4080      "loc": {
4081        "start": {
4082          "line": 49,
4083          "column": 1,
4084          "program": "objectDestructuring.ts"
4085        },
4086        "end": {
4087          "line": 49,
4088          "column": 125,
4089          "program": "objectDestructuring.ts"
4090        }
4091      }
4092    },
4093    {
4094      "type": "VariableDeclaration",
4095      "declarations": [
4096        {
4097          "type": "VariableDeclarator",
4098          "id": {
4099            "type": "ObjectPattern",
4100            "properties": [
4101              {
4102                "type": "Property",
4103                "method": false,
4104                "shorthand": false,
4105                "computed": false,
4106                "key": {
4107                  "type": "Identifier",
4108                  "name": "prop",
4109                  "decorators": [],
4110                  "loc": {
4111                    "start": {
4112                      "line": 50,
4113                      "column": 7,
4114                      "program": "objectDestructuring.ts"
4115                    },
4116                    "end": {
4117                      "line": 50,
4118                      "column": 11,
4119                      "program": "objectDestructuring.ts"
4120                    }
4121                  }
4122                },
4123                "value": {
4124                  "type": "ObjectPattern",
4125                  "properties": [
4126                    {
4127                      "type": "Property",
4128                      "method": false,
4129                      "shorthand": true,
4130                      "computed": false,
4131                      "key": {
4132                        "type": "Identifier",
4133                        "name": "var15",
4134                        "decorators": [],
4135                        "loc": {
4136                          "start": {
4137                            "line": 50,
4138                            "column": 15,
4139                            "program": "objectDestructuring.ts"
4140                          },
4141                          "end": {
4142                            "line": 50,
4143                            "column": 20,
4144                            "program": "objectDestructuring.ts"
4145                          }
4146                        }
4147                      },
4148                      "value": {
4149                        "type": "Identifier",
4150                        "name": "var15",
4151                        "decorators": [],
4152                        "loc": {
4153                          "start": {
4154                            "line": 50,
4155                            "column": 15,
4156                            "program": "objectDestructuring.ts"
4157                          },
4158                          "end": {
4159                            "line": 50,
4160                            "column": 20,
4161                            "program": "objectDestructuring.ts"
4162                          }
4163                        }
4164                      },
4165                      "kind": "init",
4166                      "loc": {
4167                        "start": {
4168                          "line": 50,
4169                          "column": 15,
4170                          "program": "objectDestructuring.ts"
4171                        },
4172                        "end": {
4173                          "line": 50,
4174                          "column": 20,
4175                          "program": "objectDestructuring.ts"
4176                        }
4177                      }
4178                    },
4179                    {
4180                      "type": "RestElement",
4181                      "argument": {
4182                        "type": "Identifier",
4183                        "name": "var16",
4184                        "decorators": [],
4185                        "loc": {
4186                          "start": {
4187                            "line": 50,
4188                            "column": 25,
4189                            "program": "objectDestructuring.ts"
4190                          },
4191                          "end": {
4192                            "line": 50,
4193                            "column": 30,
4194                            "program": "objectDestructuring.ts"
4195                          }
4196                        }
4197                      },
4198                      "loc": {
4199                        "start": {
4200                          "line": 50,
4201                          "column": 22,
4202                          "program": "objectDestructuring.ts"
4203                        },
4204                        "end": {
4205                          "line": 50,
4206                          "column": 30,
4207                          "program": "objectDestructuring.ts"
4208                        }
4209                      }
4210                    }
4211                  ],
4212                  "loc": {
4213                    "start": {
4214                      "line": 50,
4215                      "column": 13,
4216                      "program": "objectDestructuring.ts"
4217                    },
4218                    "end": {
4219                      "line": 50,
4220                      "column": 32,
4221                      "program": "objectDestructuring.ts"
4222                    }
4223                  }
4224                },
4225                "kind": "init",
4226                "loc": {
4227                  "start": {
4228                    "line": 50,
4229                    "column": 7,
4230                    "program": "objectDestructuring.ts"
4231                  },
4232                  "end": {
4233                    "line": 50,
4234                    "column": 32,
4235                    "program": "objectDestructuring.ts"
4236                  }
4237                }
4238              }
4239            ],
4240            "typeAnnotation": {
4241              "type": "TSTypeLiteral",
4242              "members": [
4243                {
4244                  "type": "TSPropertySignature",
4245                  "computed": false,
4246                  "optional": false,
4247                  "readonly": false,
4248                  "key": {
4249                    "type": "Identifier",
4250                    "name": "prop",
4251                    "decorators": [],
4252                    "loc": {
4253                      "start": {
4254                        "line": 50,
4255                        "column": 38,
4256                        "program": "objectDestructuring.ts"
4257                      },
4258                      "end": {
4259                        "line": 50,
4260                        "column": 42,
4261                        "program": "objectDestructuring.ts"
4262                      }
4263                    }
4264                  },
4265                  "typeAnnotation": {
4266                    "type": "TSTypeLiteral",
4267                    "members": [
4268                      {
4269                        "type": "TSPropertySignature",
4270                        "computed": false,
4271                        "optional": false,
4272                        "readonly": false,
4273                        "key": {
4274                          "type": "Identifier",
4275                          "name": "var15",
4276                          "decorators": [],
4277                          "loc": {
4278                            "start": {
4279                              "line": 50,
4280                              "column": 46,
4281                              "program": "objectDestructuring.ts"
4282                            },
4283                            "end": {
4284                              "line": 50,
4285                              "column": 51,
4286                              "program": "objectDestructuring.ts"
4287                            }
4288                          }
4289                        },
4290                        "typeAnnotation": {
4291                          "type": "TSNumberKeyword",
4292                          "loc": {
4293                            "start": {
4294                              "line": 50,
4295                              "column": 53,
4296                              "program": "objectDestructuring.ts"
4297                            },
4298                            "end": {
4299                              "line": 50,
4300                              "column": 59,
4301                              "program": "objectDestructuring.ts"
4302                            }
4303                          }
4304                        },
4305                        "loc": {
4306                          "start": {
4307                            "line": 50,
4308                            "column": 46,
4309                            "program": "objectDestructuring.ts"
4310                          },
4311                          "end": {
4312                            "line": 50,
4313                            "column": 60,
4314                            "program": "objectDestructuring.ts"
4315                          }
4316                        }
4317                      },
4318                      {
4319                        "type": "TSPropertySignature",
4320                        "computed": false,
4321                        "optional": false,
4322                        "readonly": false,
4323                        "key": {
4324                          "type": "Identifier",
4325                          "name": "a",
4326                          "decorators": [],
4327                          "loc": {
4328                            "start": {
4329                              "line": 50,
4330                              "column": 61,
4331                              "program": "objectDestructuring.ts"
4332                            },
4333                            "end": {
4334                              "line": 50,
4335                              "column": 62,
4336                              "program": "objectDestructuring.ts"
4337                            }
4338                          }
4339                        },
4340                        "typeAnnotation": {
4341                          "type": "TSStringKeyword",
4342                          "loc": {
4343                            "start": {
4344                              "line": 50,
4345                              "column": 64,
4346                              "program": "objectDestructuring.ts"
4347                            },
4348                            "end": {
4349                              "line": 50,
4350                              "column": 70,
4351                              "program": "objectDestructuring.ts"
4352                            }
4353                          }
4354                        },
4355                        "loc": {
4356                          "start": {
4357                            "line": 50,
4358                            "column": 61,
4359                            "program": "objectDestructuring.ts"
4360                          },
4361                          "end": {
4362                            "line": 50,
4363                            "column": 71,
4364                            "program": "objectDestructuring.ts"
4365                          }
4366                        }
4367                      },
4368                      {
4369                        "type": "TSMethodSignature",
4370                        "computed": false,
4371                        "optional": false,
4372                        "key": {
4373                          "type": "Identifier",
4374                          "name": "b",
4375                          "decorators": [],
4376                          "loc": {
4377                            "start": {
4378                              "line": 50,
4379                              "column": 72,
4380                              "program": "objectDestructuring.ts"
4381                            },
4382                            "end": {
4383                              "line": 50,
4384                              "column": 73,
4385                              "program": "objectDestructuring.ts"
4386                            }
4387                          }
4388                        },
4389                        "params": [
4390                          {
4391                            "type": "Identifier",
4392                            "name": "a",
4393                            "typeAnnotation": {
4394                              "type": "TSNumberKeyword",
4395                              "loc": {
4396                                "start": {
4397                                  "line": 50,
4398                                  "column": 77,
4399                                  "program": "objectDestructuring.ts"
4400                                },
4401                                "end": {
4402                                  "line": 50,
4403                                  "column": 83,
4404                                  "program": "objectDestructuring.ts"
4405                                }
4406                              }
4407                            },
4408                            "decorators": [],
4409                            "loc": {
4410                              "start": {
4411                                "line": 50,
4412                                "column": 74,
4413                                "program": "objectDestructuring.ts"
4414                              },
4415                              "end": {
4416                                "line": 50,
4417                                "column": 75,
4418                                "program": "objectDestructuring.ts"
4419                              }
4420                            }
4421                          },
4422                          {
4423                            "type": "Identifier",
4424                            "name": "b",
4425                            "typeAnnotation": {
4426                              "type": "TSArrayType",
4427                              "elementType": {
4428                                "type": "TSNumberKeyword",
4429                                "loc": {
4430                                  "start": {
4431                                    "line": 50,
4432                                    "column": 88,
4433                                    "program": "objectDestructuring.ts"
4434                                  },
4435                                  "end": {
4436                                    "line": 50,
4437                                    "column": 94,
4438                                    "program": "objectDestructuring.ts"
4439                                  }
4440                                }
4441                              },
4442                              "annotations": [],
4443                              "loc": {
4444                                "start": {
4445                                  "line": 50,
4446                                  "column": 88,
4447                                  "program": "objectDestructuring.ts"
4448                                },
4449                                "end": {
4450                                  "line": 50,
4451                                  "column": 96,
4452                                  "program": "objectDestructuring.ts"
4453                                }
4454                              }
4455                            },
4456                            "decorators": [],
4457                            "loc": {
4458                              "start": {
4459                                "line": 50,
4460                                "column": 85,
4461                                "program": "objectDestructuring.ts"
4462                              },
4463                              "end": {
4464                                "line": 50,
4465                                "column": 86,
4466                                "program": "objectDestructuring.ts"
4467                              }
4468                            }
4469                          }
4470                        ],
4471                        "typeAnnotation": {
4472                          "type": "TSBooleanKeyword",
4473                          "loc": {
4474                            "start": {
4475                              "line": 50,
4476                              "column": 99,
4477                              "program": "objectDestructuring.ts"
4478                            },
4479                            "end": {
4480                              "line": 50,
4481                              "column": 106,
4482                              "program": "objectDestructuring.ts"
4483                            }
4484                          }
4485                        },
4486                        "loc": {
4487                          "start": {
4488                            "line": 50,
4489                            "column": 72,
4490                            "program": "objectDestructuring.ts"
4491                          },
4492                          "end": {
4493                            "line": 50,
4494                            "column": 107,
4495                            "program": "objectDestructuring.ts"
4496                          }
4497                        }
4498                      },
4499                      {
4500                        "type": "TSPropertySignature",
4501                        "computed": false,
4502                        "optional": false,
4503                        "readonly": false,
4504                        "key": {
4505                          "type": "Identifier",
4506                          "name": "c",
4507                          "decorators": [],
4508                          "loc": {
4509                            "start": {
4510                              "line": 50,
4511                              "column": 108,
4512                              "program": "objectDestructuring.ts"
4513                            },
4514                            "end": {
4515                              "line": 50,
4516                              "column": 109,
4517                              "program": "objectDestructuring.ts"
4518                            }
4519                          }
4520                        },
4521                        "typeAnnotation": {
4522                          "type": "TSArrayType",
4523                          "elementType": {
4524                            "type": "TSNumberKeyword",
4525                            "loc": {
4526                              "start": {
4527                                "line": 50,
4528                                "column": 111,
4529                                "program": "objectDestructuring.ts"
4530                              },
4531                              "end": {
4532                                "line": 50,
4533                                "column": 117,
4534                                "program": "objectDestructuring.ts"
4535                              }
4536                            }
4537                          },
4538                          "annotations": [],
4539                          "loc": {
4540                            "start": {
4541                              "line": 50,
4542                              "column": 111,
4543                              "program": "objectDestructuring.ts"
4544                            },
4545                            "end": {
4546                              "line": 50,
4547                              "column": 119,
4548                              "program": "objectDestructuring.ts"
4549                            }
4550                          }
4551                        },
4552                        "loc": {
4553                          "start": {
4554                            "line": 50,
4555                            "column": 108,
4556                            "program": "objectDestructuring.ts"
4557                          },
4558                          "end": {
4559                            "line": 50,
4560                            "column": 121,
4561                            "program": "objectDestructuring.ts"
4562                          }
4563                        }
4564                      }
4565                    ],
4566                    "loc": {
4567                      "start": {
4568                        "line": 50,
4569                        "column": 44,
4570                        "program": "objectDestructuring.ts"
4571                      },
4572                      "end": {
4573                        "line": 50,
4574                        "column": 121,
4575                        "program": "objectDestructuring.ts"
4576                      }
4577                    }
4578                  },
4579                  "loc": {
4580                    "start": {
4581                      "line": 50,
4582                      "column": 38,
4583                      "program": "objectDestructuring.ts"
4584                    },
4585                    "end": {
4586                      "line": 50,
4587                      "column": 123,
4588                      "program": "objectDestructuring.ts"
4589                    }
4590                  }
4591                }
4592              ],
4593              "loc": {
4594                "start": {
4595                  "line": 50,
4596                  "column": 36,
4597                  "program": "objectDestructuring.ts"
4598                },
4599                "end": {
4600                  "line": 50,
4601                  "column": 123,
4602                  "program": "objectDestructuring.ts"
4603                }
4604              }
4605            },
4606            "loc": {
4607              "start": {
4608                "line": 50,
4609                "column": 5,
4610                "program": "objectDestructuring.ts"
4611              },
4612              "end": {
4613                "line": 50,
4614                "column": 34,
4615                "program": "objectDestructuring.ts"
4616              }
4617            }
4618          },
4619          "init": {
4620            "type": "ObjectExpression",
4621            "properties": [
4622              {
4623                "type": "Property",
4624                "method": false,
4625                "shorthand": false,
4626                "computed": false,
4627                "key": {
4628                  "type": "Identifier",
4629                  "name": "prop",
4630                  "decorators": [],
4631                  "loc": {
4632                    "start": {
4633                      "line": 50,
4634                      "column": 128,
4635                      "program": "objectDestructuring.ts"
4636                    },
4637                    "end": {
4638                      "line": 50,
4639                      "column": 132,
4640                      "program": "objectDestructuring.ts"
4641                    }
4642                  }
4643                },
4644                "value": {
4645                  "type": "ObjectExpression",
4646                  "properties": [
4647                    {
4648                      "type": "Property",
4649                      "method": false,
4650                      "shorthand": false,
4651                      "computed": false,
4652                      "key": {
4653                        "type": "Identifier",
4654                        "name": "var15",
4655                        "decorators": [],
4656                        "loc": {
4657                          "start": {
4658                            "line": 50,
4659                            "column": 136,
4660                            "program": "objectDestructuring.ts"
4661                          },
4662                          "end": {
4663                            "line": 50,
4664                            "column": 141,
4665                            "program": "objectDestructuring.ts"
4666                          }
4667                        }
4668                      },
4669                      "value": {
4670                        "type": "NumberLiteral",
4671                        "value": 12,
4672                        "loc": {
4673                          "start": {
4674                            "line": 50,
4675                            "column": 143,
4676                            "program": "objectDestructuring.ts"
4677                          },
4678                          "end": {
4679                            "line": 50,
4680                            "column": 145,
4681                            "program": "objectDestructuring.ts"
4682                          }
4683                        }
4684                      },
4685                      "kind": "init",
4686                      "loc": {
4687                        "start": {
4688                          "line": 50,
4689                          "column": 136,
4690                          "program": "objectDestructuring.ts"
4691                        },
4692                        "end": {
4693                          "line": 50,
4694                          "column": 145,
4695                          "program": "objectDestructuring.ts"
4696                        }
4697                      }
4698                    },
4699                    {
4700                      "type": "Property",
4701                      "method": false,
4702                      "shorthand": false,
4703                      "computed": false,
4704                      "key": {
4705                        "type": "Identifier",
4706                        "name": "a",
4707                        "decorators": [],
4708                        "loc": {
4709                          "start": {
4710                            "line": 50,
4711                            "column": 147,
4712                            "program": "objectDestructuring.ts"
4713                          },
4714                          "end": {
4715                            "line": 50,
4716                            "column": 148,
4717                            "program": "objectDestructuring.ts"
4718                          }
4719                        }
4720                      },
4721                      "value": {
4722                        "type": "StringLiteral",
4723                        "value": "foo",
4724                        "loc": {
4725                          "start": {
4726                            "line": 50,
4727                            "column": 150,
4728                            "program": "objectDestructuring.ts"
4729                          },
4730                          "end": {
4731                            "line": 50,
4732                            "column": 155,
4733                            "program": "objectDestructuring.ts"
4734                          }
4735                        }
4736                      },
4737                      "kind": "init",
4738                      "loc": {
4739                        "start": {
4740                          "line": 50,
4741                          "column": 147,
4742                          "program": "objectDestructuring.ts"
4743                        },
4744                        "end": {
4745                          "line": 50,
4746                          "column": 155,
4747                          "program": "objectDestructuring.ts"
4748                        }
4749                      }
4750                    },
4751                    {
4752                      "type": "Property",
4753                      "method": false,
4754                      "shorthand": false,
4755                      "computed": false,
4756                      "key": {
4757                        "type": "Identifier",
4758                        "name": "c",
4759                        "decorators": [],
4760                        "loc": {
4761                          "start": {
4762                            "line": 50,
4763                            "column": 157,
4764                            "program": "objectDestructuring.ts"
4765                          },
4766                          "end": {
4767                            "line": 50,
4768                            "column": 158,
4769                            "program": "objectDestructuring.ts"
4770                          }
4771                        }
4772                      },
4773                      "value": {
4774                        "type": "ArrayExpression",
4775                        "elements": [
4776                          {
4777                            "type": "NumberLiteral",
4778                            "value": 1,
4779                            "loc": {
4780                              "start": {
4781                                "line": 50,
4782                                "column": 161,
4783                                "program": "objectDestructuring.ts"
4784                              },
4785                              "end": {
4786                                "line": 50,
4787                                "column": 162,
4788                                "program": "objectDestructuring.ts"
4789                              }
4790                            }
4791                          },
4792                          {
4793                            "type": "NumberLiteral",
4794                            "value": 2,
4795                            "loc": {
4796                              "start": {
4797                                "line": 50,
4798                                "column": 164,
4799                                "program": "objectDestructuring.ts"
4800                              },
4801                              "end": {
4802                                "line": 50,
4803                                "column": 165,
4804                                "program": "objectDestructuring.ts"
4805                              }
4806                            }
4807                          },
4808                          {
4809                            "type": "NumberLiteral",
4810                            "value": 3,
4811                            "loc": {
4812                              "start": {
4813                                "line": 50,
4814                                "column": 167,
4815                                "program": "objectDestructuring.ts"
4816                              },
4817                              "end": {
4818                                "line": 50,
4819                                "column": 168,
4820                                "program": "objectDestructuring.ts"
4821                              }
4822                            }
4823                          }
4824                        ],
4825                        "loc": {
4826                          "start": {
4827                            "line": 50,
4828                            "column": 160,
4829                            "program": "objectDestructuring.ts"
4830                          },
4831                          "end": {
4832                            "line": 50,
4833                            "column": 169,
4834                            "program": "objectDestructuring.ts"
4835                          }
4836                        }
4837                      },
4838                      "kind": "init",
4839                      "loc": {
4840                        "start": {
4841                          "line": 50,
4842                          "column": 157,
4843                          "program": "objectDestructuring.ts"
4844                        },
4845                        "end": {
4846                          "line": 50,
4847                          "column": 169,
4848                          "program": "objectDestructuring.ts"
4849                        }
4850                      }
4851                    },
4852                    {
4853                      "type": "Property",
4854                      "method": false,
4855                      "shorthand": false,
4856                      "computed": false,
4857                      "key": {
4858                        "type": "Identifier",
4859                        "name": "b",
4860                        "decorators": [],
4861                        "loc": {
4862                          "start": {
4863                            "line": 50,
4864                            "column": 171,
4865                            "program": "objectDestructuring.ts"
4866                          },
4867                          "end": {
4868                            "line": 50,
4869                            "column": 172,
4870                            "program": "objectDestructuring.ts"
4871                          }
4872                        }
4873                      },
4874                      "value": {
4875                        "type": "FunctionExpression",
4876                        "function": {
4877                          "type": "ScriptFunction",
4878                          "id": null,
4879                          "generator": false,
4880                          "async": false,
4881                          "expression": false,
4882                          "params": [
4883                            {
4884                              "type": "Identifier",
4885                              "name": "a",
4886                              "typeAnnotation": {
4887                                "type": "TSNumberKeyword",
4888                                "loc": {
4889                                  "start": {
4890                                    "line": 50,
4891                                    "column": 187,
4892                                    "program": "objectDestructuring.ts"
4893                                  },
4894                                  "end": {
4895                                    "line": 50,
4896                                    "column": 193,
4897                                    "program": "objectDestructuring.ts"
4898                                  }
4899                                }
4900                              },
4901                              "decorators": [],
4902                              "loc": {
4903                                "start": {
4904                                  "line": 50,
4905                                  "column": 184,
4906                                  "program": "objectDestructuring.ts"
4907                                },
4908                                "end": {
4909                                  "line": 50,
4910                                  "column": 185,
4911                                  "program": "objectDestructuring.ts"
4912                                }
4913                              }
4914                            },
4915                            {
4916                              "type": "Identifier",
4917                              "name": "b",
4918                              "typeAnnotation": {
4919                                "type": "TSArrayType",
4920                                "elementType": {
4921                                  "type": "TSNumberKeyword",
4922                                  "loc": {
4923                                    "start": {
4924                                      "line": 50,
4925                                      "column": 198,
4926                                      "program": "objectDestructuring.ts"
4927                                    },
4928                                    "end": {
4929                                      "line": 50,
4930                                      "column": 204,
4931                                      "program": "objectDestructuring.ts"
4932                                    }
4933                                  }
4934                                },
4935                                "annotations": [],
4936                                "loc": {
4937                                  "start": {
4938                                    "line": 50,
4939                                    "column": 198,
4940                                    "program": "objectDestructuring.ts"
4941                                  },
4942                                  "end": {
4943                                    "line": 50,
4944                                    "column": 206,
4945                                    "program": "objectDestructuring.ts"
4946                                  }
4947                                }
4948                              },
4949                              "decorators": [],
4950                              "loc": {
4951                                "start": {
4952                                  "line": 50,
4953                                  "column": 195,
4954                                  "program": "objectDestructuring.ts"
4955                                },
4956                                "end": {
4957                                  "line": 50,
4958                                  "column": 196,
4959                                  "program": "objectDestructuring.ts"
4960                                }
4961                              }
4962                            }
4963                          ],
4964                          "returnType": {
4965                            "type": "TSBooleanKeyword",
4966                            "loc": {
4967                              "start": {
4968                                "line": 50,
4969                                "column": 209,
4970                                "program": "objectDestructuring.ts"
4971                              },
4972                              "end": {
4973                                "line": 50,
4974                                "column": 216,
4975                                "program": "objectDestructuring.ts"
4976                              }
4977                            }
4978                          },
4979                          "body": {
4980                            "type": "BlockStatement",
4981                            "statements": [
4982                              {
4983                                "type": "ReturnStatement",
4984                                "argument": {
4985                                  "type": "BooleanLiteral",
4986                                  "value": true,
4987                                  "loc": {
4988                                    "start": {
4989                                      "line": 50,
4990                                      "column": 226,
4991                                      "program": "objectDestructuring.ts"
4992                                    },
4993                                    "end": {
4994                                      "line": 50,
4995                                      "column": 230,
4996                                      "program": "objectDestructuring.ts"
4997                                    }
4998                                  }
4999                                },
5000                                "loc": {
5001                                  "start": {
5002                                    "line": 50,
5003                                    "column": 219,
5004                                    "program": "objectDestructuring.ts"
5005                                  },
5006                                  "end": {
5007                                    "line": 50,
5008                                    "column": 230,
5009                                    "program": "objectDestructuring.ts"
5010                                  }
5011                                }
5012                              }
5013                            ],
5014                            "loc": {
5015                              "start": {
5016                                "line": 50,
5017                                "column": 217,
5018                                "program": "objectDestructuring.ts"
5019                              },
5020                              "end": {
5021                                "line": 50,
5022                                "column": 232,
5023                                "program": "objectDestructuring.ts"
5024                              }
5025                            }
5026                          },
5027                          "loc": {
5028                            "start": {
5029                              "line": 50,
5030                              "column": 174,
5031                              "program": "objectDestructuring.ts"
5032                            },
5033                            "end": {
5034                              "line": 50,
5035                              "column": 232,
5036                              "program": "objectDestructuring.ts"
5037                            }
5038                          }
5039                        },
5040                        "loc": {
5041                          "start": {
5042                            "line": 50,
5043                            "column": 174,
5044                            "program": "objectDestructuring.ts"
5045                          },
5046                          "end": {
5047                            "line": 50,
5048                            "column": 232,
5049                            "program": "objectDestructuring.ts"
5050                          }
5051                        }
5052                      },
5053                      "kind": "init",
5054                      "loc": {
5055                        "start": {
5056                          "line": 50,
5057                          "column": 171,
5058                          "program": "objectDestructuring.ts"
5059                        },
5060                        "end": {
5061                          "line": 50,
5062                          "column": 232,
5063                          "program": "objectDestructuring.ts"
5064                        }
5065                      }
5066                    }
5067                  ],
5068                  "loc": {
5069                    "start": {
5070                      "line": 50,
5071                      "column": 134,
5072                      "program": "objectDestructuring.ts"
5073                    },
5074                    "end": {
5075                      "line": 50,
5076                      "column": 234,
5077                      "program": "objectDestructuring.ts"
5078                    }
5079                  }
5080                },
5081                "kind": "init",
5082                "loc": {
5083                  "start": {
5084                    "line": 50,
5085                    "column": 128,
5086                    "program": "objectDestructuring.ts"
5087                  },
5088                  "end": {
5089                    "line": 50,
5090                    "column": 234,
5091                    "program": "objectDestructuring.ts"
5092                  }
5093                }
5094              }
5095            ],
5096            "loc": {
5097              "start": {
5098                "line": 50,
5099                "column": 126,
5100                "program": "objectDestructuring.ts"
5101              },
5102              "end": {
5103                "line": 50,
5104                "column": 236,
5105                "program": "objectDestructuring.ts"
5106              }
5107            }
5108          },
5109          "loc": {
5110            "start": {
5111              "line": 50,
5112              "column": 5,
5113              "program": "objectDestructuring.ts"
5114            },
5115            "end": {
5116              "line": 50,
5117              "column": 236,
5118              "program": "objectDestructuring.ts"
5119            }
5120          }
5121        }
5122      ],
5123      "kind": "var",
5124      "loc": {
5125        "start": {
5126          "line": 50,
5127          "column": 1,
5128          "program": "objectDestructuring.ts"
5129        },
5130        "end": {
5131          "line": 50,
5132          "column": 237,
5133          "program": "objectDestructuring.ts"
5134        }
5135      }
5136    },
5137    {
5138      "type": "VariableDeclaration",
5139      "declarations": [
5140        {
5141          "type": "VariableDeclarator",
5142          "id": {
5143            "type": "ObjectPattern",
5144            "properties": [
5145              {
5146                "type": "RestElement",
5147                "argument": {
5148                  "type": "Identifier",
5149                  "name": "var17",
5150                  "decorators": [],
5151                  "loc": {
5152                    "start": {
5153                      "line": 51,
5154                      "column": 10,
5155                      "program": "objectDestructuring.ts"
5156                    },
5157                    "end": {
5158                      "line": 51,
5159                      "column": 15,
5160                      "program": "objectDestructuring.ts"
5161                    }
5162                  }
5163                },
5164                "loc": {
5165                  "start": {
5166                    "line": 51,
5167                    "column": 7,
5168                    "program": "objectDestructuring.ts"
5169                  },
5170                  "end": {
5171                    "line": 51,
5172                    "column": 15,
5173                    "program": "objectDestructuring.ts"
5174                  }
5175                }
5176              }
5177            ],
5178            "typeAnnotation": {
5179              "type": "TSUnionType",
5180              "types": [
5181                {
5182                  "type": "TSTypeLiteral",
5183                  "members": [
5184                    {
5185                      "type": "TSPropertySignature",
5186                      "computed": false,
5187                      "optional": false,
5188                      "readonly": false,
5189                      "key": {
5190                        "type": "Identifier",
5191                        "name": "a",
5192                        "decorators": [],
5193                        "loc": {
5194                          "start": {
5195                            "line": 51,
5196                            "column": 21,
5197                            "program": "objectDestructuring.ts"
5198                          },
5199                          "end": {
5200                            "line": 51,
5201                            "column": 22,
5202                            "program": "objectDestructuring.ts"
5203                          }
5204                        }
5205                      },
5206                      "typeAnnotation": {
5207                        "type": "TSNumberKeyword",
5208                        "loc": {
5209                          "start": {
5210                            "line": 51,
5211                            "column": 24,
5212                            "program": "objectDestructuring.ts"
5213                          },
5214                          "end": {
5215                            "line": 51,
5216                            "column": 30,
5217                            "program": "objectDestructuring.ts"
5218                          }
5219                        }
5220                      },
5221                      "loc": {
5222                        "start": {
5223                          "line": 51,
5224                          "column": 21,
5225                          "program": "objectDestructuring.ts"
5226                        },
5227                        "end": {
5228                          "line": 51,
5229                          "column": 31,
5230                          "program": "objectDestructuring.ts"
5231                        }
5232                      }
5233                    },
5234                    {
5235                      "type": "TSPropertySignature",
5236                      "computed": false,
5237                      "optional": false,
5238                      "readonly": false,
5239                      "key": {
5240                        "type": "Identifier",
5241                        "name": "b",
5242                        "decorators": [],
5243                        "loc": {
5244                          "start": {
5245                            "line": 51,
5246                            "column": 32,
5247                            "program": "objectDestructuring.ts"
5248                          },
5249                          "end": {
5250                            "line": 51,
5251                            "column": 33,
5252                            "program": "objectDestructuring.ts"
5253                          }
5254                        }
5255                      },
5256                      "typeAnnotation": {
5257                        "type": "TSStringKeyword",
5258                        "loc": {
5259                          "start": {
5260                            "line": 51,
5261                            "column": 35,
5262                            "program": "objectDestructuring.ts"
5263                          },
5264                          "end": {
5265                            "line": 51,
5266                            "column": 41,
5267                            "program": "objectDestructuring.ts"
5268                          }
5269                        }
5270                      },
5271                      "loc": {
5272                        "start": {
5273                          "line": 51,
5274                          "column": 32,
5275                          "program": "objectDestructuring.ts"
5276                        },
5277                        "end": {
5278                          "line": 51,
5279                          "column": 43,
5280                          "program": "objectDestructuring.ts"
5281                        }
5282                      }
5283                    }
5284                  ],
5285                  "loc": {
5286                    "start": {
5287                      "line": 51,
5288                      "column": 19,
5289                      "program": "objectDestructuring.ts"
5290                    },
5291                    "end": {
5292                      "line": 51,
5293                      "column": 43,
5294                      "program": "objectDestructuring.ts"
5295                    }
5296                  }
5297                },
5298                {
5299                  "type": "TSTypeLiteral",
5300                  "members": [
5301                    {
5302                      "type": "TSPropertySignature",
5303                      "computed": false,
5304                      "optional": false,
5305                      "readonly": false,
5306                      "key": {
5307                        "type": "Identifier",
5308                        "name": "c",
5309                        "decorators": [],
5310                        "loc": {
5311                          "start": {
5312                            "line": 51,
5313                            "column": 48,
5314                            "program": "objectDestructuring.ts"
5315                          },
5316                          "end": {
5317                            "line": 51,
5318                            "column": 49,
5319                            "program": "objectDestructuring.ts"
5320                          }
5321                        }
5322                      },
5323                      "typeAnnotation": {
5324                        "type": "TSBooleanKeyword",
5325                        "loc": {
5326                          "start": {
5327                            "line": 51,
5328                            "column": 51,
5329                            "program": "objectDestructuring.ts"
5330                          },
5331                          "end": {
5332                            "line": 51,
5333                            "column": 58,
5334                            "program": "objectDestructuring.ts"
5335                          }
5336                        }
5337                      },
5338                      "loc": {
5339                        "start": {
5340                          "line": 51,
5341                          "column": 48,
5342                          "program": "objectDestructuring.ts"
5343                        },
5344                        "end": {
5345                          "line": 51,
5346                          "column": 59,
5347                          "program": "objectDestructuring.ts"
5348                        }
5349                      }
5350                    },
5351                    {
5352                      "type": "TSPropertySignature",
5353                      "computed": false,
5354                      "optional": false,
5355                      "readonly": false,
5356                      "key": {
5357                        "type": "Identifier",
5358                        "name": "d",
5359                        "decorators": [],
5360                        "loc": {
5361                          "start": {
5362                            "line": 51,
5363                            "column": 60,
5364                            "program": "objectDestructuring.ts"
5365                          },
5366                          "end": {
5367                            "line": 51,
5368                            "column": 61,
5369                            "program": "objectDestructuring.ts"
5370                          }
5371                        }
5372                      },
5373                      "typeAnnotation": {
5374                        "type": "TSVoidKeyword",
5375                        "loc": {
5376                          "start": {
5377                            "line": 51,
5378                            "column": 63,
5379                            "program": "objectDestructuring.ts"
5380                          },
5381                          "end": {
5382                            "line": 51,
5383                            "column": 67,
5384                            "program": "objectDestructuring.ts"
5385                          }
5386                        }
5387                      },
5388                      "loc": {
5389                        "start": {
5390                          "line": 51,
5391                          "column": 60,
5392                          "program": "objectDestructuring.ts"
5393                        },
5394                        "end": {
5395                          "line": 51,
5396                          "column": 69,
5397                          "program": "objectDestructuring.ts"
5398                        }
5399                      }
5400                    }
5401                  ],
5402                  "loc": {
5403                    "start": {
5404                      "line": 51,
5405                      "column": 46,
5406                      "program": "objectDestructuring.ts"
5407                    },
5408                    "end": {
5409                      "line": 51,
5410                      "column": 69,
5411                      "program": "objectDestructuring.ts"
5412                    }
5413                  }
5414                },
5415                {
5416                  "type": "TSTypeLiteral",
5417                  "members": [
5418                    {
5419                      "type": "TSPropertySignature",
5420                      "computed": false,
5421                      "optional": false,
5422                      "readonly": false,
5423                      "key": {
5424                        "type": "Identifier",
5425                        "name": "e",
5426                        "decorators": [],
5427                        "loc": {
5428                          "start": {
5429                            "line": 51,
5430                            "column": 74,
5431                            "program": "objectDestructuring.ts"
5432                          },
5433                          "end": {
5434                            "line": 51,
5435                            "column": 75,
5436                            "program": "objectDestructuring.ts"
5437                          }
5438                        }
5439                      },
5440                      "typeAnnotation": {
5441                        "type": "TSTypeLiteral",
5442                        "members": [
5443                          {
5444                            "type": "TSPropertySignature",
5445                            "computed": false,
5446                            "optional": false,
5447                            "readonly": false,
5448                            "key": {
5449                              "type": "Identifier",
5450                              "name": "k",
5451                              "decorators": [],
5452                              "loc": {
5453                                "start": {
5454                                  "line": 51,
5455                                  "column": 79,
5456                                  "program": "objectDestructuring.ts"
5457                                },
5458                                "end": {
5459                                  "line": 51,
5460                                  "column": 80,
5461                                  "program": "objectDestructuring.ts"
5462                                }
5463                              }
5464                            },
5465                            "typeAnnotation": {
5466                              "type": "TSLiteralType",
5467                              "literal": {
5468                                "type": "BooleanLiteral",
5469                                "value": true,
5470                                "loc": {
5471                                  "start": {
5472                                    "line": 51,
5473                                    "column": 82,
5474                                    "program": "objectDestructuring.ts"
5475                                  },
5476                                  "end": {
5477                                    "line": 51,
5478                                    "column": 86,
5479                                    "program": "objectDestructuring.ts"
5480                                  }
5481                                }
5482                              },
5483                              "loc": {
5484                                "start": {
5485                                  "line": 51,
5486                                  "column": 82,
5487                                  "program": "objectDestructuring.ts"
5488                                },
5489                                "end": {
5490                                  "line": 51,
5491                                  "column": 86,
5492                                  "program": "objectDestructuring.ts"
5493                                }
5494                              }
5495                            },
5496                            "loc": {
5497                              "start": {
5498                                "line": 51,
5499                                "column": 79,
5500                                "program": "objectDestructuring.ts"
5501                              },
5502                              "end": {
5503                                "line": 51,
5504                                "column": 87,
5505                                "program": "objectDestructuring.ts"
5506                              }
5507                            }
5508                          },
5509                          {
5510                            "type": "TSPropertySignature",
5511                            "computed": false,
5512                            "optional": false,
5513                            "readonly": false,
5514                            "key": {
5515                              "type": "Identifier",
5516                              "name": "z",
5517                              "decorators": [],
5518                              "loc": {
5519                                "start": {
5520                                  "line": 51,
5521                                  "column": 88,
5522                                  "program": "objectDestructuring.ts"
5523                                },
5524                                "end": {
5525                                  "line": 51,
5526                                  "column": 89,
5527                                  "program": "objectDestructuring.ts"
5528                                }
5529                              }
5530                            },
5531                            "typeAnnotation": {
5532                              "type": "TSLiteralType",
5533                              "literal": {
5534                                "type": "StringLiteral",
5535                                "value": "foo",
5536                                "loc": {
5537                                  "start": {
5538                                    "line": 51,
5539                                    "column": 91,
5540                                    "program": "objectDestructuring.ts"
5541                                  },
5542                                  "end": {
5543                                    "line": 51,
5544                                    "column": 96,
5545                                    "program": "objectDestructuring.ts"
5546                                  }
5547                                }
5548                              },
5549                              "loc": {
5550                                "start": {
5551                                  "line": 51,
5552                                  "column": 91,
5553                                  "program": "objectDestructuring.ts"
5554                                },
5555                                "end": {
5556                                  "line": 51,
5557                                  "column": 96,
5558                                  "program": "objectDestructuring.ts"
5559                                }
5560                              }
5561                            },
5562                            "loc": {
5563                              "start": {
5564                                "line": 51,
5565                                "column": 88,
5566                                "program": "objectDestructuring.ts"
5567                              },
5568                              "end": {
5569                                "line": 51,
5570                                "column": 98,
5571                                "program": "objectDestructuring.ts"
5572                              }
5573                            }
5574                          }
5575                        ],
5576                        "loc": {
5577                          "start": {
5578                            "line": 51,
5579                            "column": 77,
5580                            "program": "objectDestructuring.ts"
5581                          },
5582                          "end": {
5583                            "line": 51,
5584                            "column": 98,
5585                            "program": "objectDestructuring.ts"
5586                          }
5587                        }
5588                      },
5589                      "loc": {
5590                        "start": {
5591                          "line": 51,
5592                          "column": 74,
5593                          "program": "objectDestructuring.ts"
5594                        },
5595                        "end": {
5596                          "line": 51,
5597                          "column": 100,
5598                          "program": "objectDestructuring.ts"
5599                        }
5600                      }
5601                    }
5602                  ],
5603                  "loc": {
5604                    "start": {
5605                      "line": 51,
5606                      "column": 72,
5607                      "program": "objectDestructuring.ts"
5608                    },
5609                    "end": {
5610                      "line": 51,
5611                      "column": 100,
5612                      "program": "objectDestructuring.ts"
5613                    }
5614                  }
5615                }
5616              ],
5617              "loc": {
5618                "start": {
5619                  "line": 51,
5620                  "column": 19,
5621                  "program": "objectDestructuring.ts"
5622                },
5623                "end": {
5624                  "line": 51,
5625                  "column": 100,
5626                  "program": "objectDestructuring.ts"
5627                }
5628              }
5629            },
5630            "loc": {
5631              "start": {
5632                "line": 51,
5633                "column": 5,
5634                "program": "objectDestructuring.ts"
5635              },
5636              "end": {
5637                "line": 51,
5638                "column": 17,
5639                "program": "objectDestructuring.ts"
5640              }
5641            }
5642          },
5643          "init": {
5644            "type": "ObjectExpression",
5645            "properties": [
5646              {
5647                "type": "Property",
5648                "method": false,
5649                "shorthand": false,
5650                "computed": false,
5651                "key": {
5652                  "type": "Identifier",
5653                  "name": "a",
5654                  "decorators": [],
5655                  "loc": {
5656                    "start": {
5657                      "line": 51,
5658                      "column": 105,
5659                      "program": "objectDestructuring.ts"
5660                    },
5661                    "end": {
5662                      "line": 51,
5663                      "column": 106,
5664                      "program": "objectDestructuring.ts"
5665                    }
5666                  }
5667                },
5668                "value": {
5669                  "type": "NumberLiteral",
5670                  "value": 5,
5671                  "loc": {
5672                    "start": {
5673                      "line": 51,
5674                      "column": 108,
5675                      "program": "objectDestructuring.ts"
5676                    },
5677                    "end": {
5678                      "line": 51,
5679                      "column": 109,
5680                      "program": "objectDestructuring.ts"
5681                    }
5682                  }
5683                },
5684                "kind": "init",
5685                "loc": {
5686                  "start": {
5687                    "line": 51,
5688                    "column": 105,
5689                    "program": "objectDestructuring.ts"
5690                  },
5691                  "end": {
5692                    "line": 51,
5693                    "column": 109,
5694                    "program": "objectDestructuring.ts"
5695                  }
5696                }
5697              },
5698              {
5699                "type": "Property",
5700                "method": false,
5701                "shorthand": false,
5702                "computed": false,
5703                "key": {
5704                  "type": "Identifier",
5705                  "name": "b",
5706                  "decorators": [],
5707                  "loc": {
5708                    "start": {
5709                      "line": 51,
5710                      "column": 111,
5711                      "program": "objectDestructuring.ts"
5712                    },
5713                    "end": {
5714                      "line": 51,
5715                      "column": 112,
5716                      "program": "objectDestructuring.ts"
5717                    }
5718                  }
5719                },
5720                "value": {
5721                  "type": "StringLiteral",
5722                  "value": "foo",
5723                  "loc": {
5724                    "start": {
5725                      "line": 51,
5726                      "column": 114,
5727                      "program": "objectDestructuring.ts"
5728                    },
5729                    "end": {
5730                      "line": 51,
5731                      "column": 119,
5732                      "program": "objectDestructuring.ts"
5733                    }
5734                  }
5735                },
5736                "kind": "init",
5737                "loc": {
5738                  "start": {
5739                    "line": 51,
5740                    "column": 111,
5741                    "program": "objectDestructuring.ts"
5742                  },
5743                  "end": {
5744                    "line": 51,
5745                    "column": 119,
5746                    "program": "objectDestructuring.ts"
5747                  }
5748                }
5749              }
5750            ],
5751            "loc": {
5752              "start": {
5753                "line": 51,
5754                "column": 103,
5755                "program": "objectDestructuring.ts"
5756              },
5757              "end": {
5758                "line": 51,
5759                "column": 121,
5760                "program": "objectDestructuring.ts"
5761              }
5762            }
5763          },
5764          "loc": {
5765            "start": {
5766              "line": 51,
5767              "column": 5,
5768              "program": "objectDestructuring.ts"
5769            },
5770            "end": {
5771              "line": 51,
5772              "column": 121,
5773              "program": "objectDestructuring.ts"
5774            }
5775          }
5776        }
5777      ],
5778      "kind": "var",
5779      "loc": {
5780        "start": {
5781          "line": 51,
5782          "column": 1,
5783          "program": "objectDestructuring.ts"
5784        },
5785        "end": {
5786          "line": 51,
5787          "column": 122,
5788          "program": "objectDestructuring.ts"
5789        }
5790      }
5791    },
5792    {
5793      "type": "VariableDeclaration",
5794      "declarations": [
5795        {
5796          "type": "VariableDeclarator",
5797          "id": {
5798            "type": "Identifier",
5799            "name": "var18",
5800            "typeAnnotation": {
5801              "type": "TSNumberKeyword",
5802              "loc": {
5803                "start": {
5804                  "line": 53,
5805                  "column": 12,
5806                  "program": "objectDestructuring.ts"
5807                },
5808                "end": {
5809                  "line": 53,
5810                  "column": 18,
5811                  "program": "objectDestructuring.ts"
5812                }
5813              }
5814            },
5815            "decorators": [],
5816            "loc": {
5817              "start": {
5818                "line": 53,
5819                "column": 5,
5820                "program": "objectDestructuring.ts"
5821              },
5822              "end": {
5823                "line": 53,
5824                "column": 10,
5825                "program": "objectDestructuring.ts"
5826              }
5827            }
5828          },
5829          "init": null,
5830          "loc": {
5831            "start": {
5832              "line": 53,
5833              "column": 5,
5834              "program": "objectDestructuring.ts"
5835            },
5836            "end": {
5837              "line": 53,
5838              "column": 10,
5839              "program": "objectDestructuring.ts"
5840            }
5841          }
5842        }
5843      ],
5844      "kind": "var",
5845      "loc": {
5846        "start": {
5847          "line": 53,
5848          "column": 1,
5849          "program": "objectDestructuring.ts"
5850        },
5851        "end": {
5852          "line": 53,
5853          "column": 19,
5854          "program": "objectDestructuring.ts"
5855        }
5856      }
5857    },
5858    {
5859      "type": "VariableDeclaration",
5860      "declarations": [
5861        {
5862          "type": "VariableDeclarator",
5863          "id": {
5864            "type": "Identifier",
5865            "name": "var19",
5866            "typeAnnotation": {
5867              "type": "TSBooleanKeyword",
5868              "loc": {
5869                "start": {
5870                  "line": 54,
5871                  "column": 12,
5872                  "program": "objectDestructuring.ts"
5873                },
5874                "end": {
5875                  "line": 54,
5876                  "column": 19,
5877                  "program": "objectDestructuring.ts"
5878                }
5879              }
5880            },
5881            "decorators": [],
5882            "loc": {
5883              "start": {
5884                "line": 54,
5885                "column": 5,
5886                "program": "objectDestructuring.ts"
5887              },
5888              "end": {
5889                "line": 54,
5890                "column": 10,
5891                "program": "objectDestructuring.ts"
5892              }
5893            }
5894          },
5895          "init": null,
5896          "loc": {
5897            "start": {
5898              "line": 54,
5899              "column": 5,
5900              "program": "objectDestructuring.ts"
5901            },
5902            "end": {
5903              "line": 54,
5904              "column": 10,
5905              "program": "objectDestructuring.ts"
5906            }
5907          }
5908        }
5909      ],
5910      "kind": "var",
5911      "loc": {
5912        "start": {
5913          "line": 54,
5914          "column": 1,
5915          "program": "objectDestructuring.ts"
5916        },
5917        "end": {
5918          "line": 54,
5919          "column": 20,
5920          "program": "objectDestructuring.ts"
5921        }
5922      }
5923    },
5924    {
5925      "type": "ExpressionStatement",
5926      "expression": {
5927        "type": "AssignmentExpression",
5928        "operator": "=",
5929        "left": {
5930          "type": "ObjectPattern",
5931          "properties": [
5932            {
5933              "type": "Property",
5934              "method": false,
5935              "shorthand": true,
5936              "computed": false,
5937              "key": {
5938                "type": "Identifier",
5939                "name": "var18",
5940                "decorators": [],
5941                "loc": {
5942                  "start": {
5943                    "line": 56,
5944                    "column": 4,
5945                    "program": "objectDestructuring.ts"
5946                  },
5947                  "end": {
5948                    "line": 56,
5949                    "column": 9,
5950                    "program": "objectDestructuring.ts"
5951                  }
5952                }
5953              },
5954              "value": {
5955                "type": "AssignmentPattern",
5956                "left": {
5957                  "type": "Identifier",
5958                  "name": "var18",
5959                  "decorators": [],
5960                  "loc": {
5961                    "start": {
5962                      "line": 56,
5963                      "column": 4,
5964                      "program": "objectDestructuring.ts"
5965                    },
5966                    "end": {
5967                      "line": 56,
5968                      "column": 9,
5969                      "program": "objectDestructuring.ts"
5970                    }
5971                  }
5972                },
5973                "right": {
5974                  "type": "NumberLiteral",
5975                  "value": 0,
5976                  "loc": {
5977                    "start": {
5978                      "line": 56,
5979                      "column": 12,
5980                      "program": "objectDestructuring.ts"
5981                    },
5982                    "end": {
5983                      "line": 56,
5984                      "column": 13,
5985                      "program": "objectDestructuring.ts"
5986                    }
5987                  }
5988                },
5989                "loc": {
5990                  "start": {
5991                    "line": 56,
5992                    "column": 4,
5993                    "program": "objectDestructuring.ts"
5994                  },
5995                  "end": {
5996                    "line": 56,
5997                    "column": 13,
5998                    "program": "objectDestructuring.ts"
5999                  }
6000                }
6001              },
6002              "kind": "init",
6003              "loc": {
6004                "start": {
6005                  "line": 56,
6006                  "column": 4,
6007                  "program": "objectDestructuring.ts"
6008                },
6009                "end": {
6010                  "line": 56,
6011                  "column": 13,
6012                  "program": "objectDestructuring.ts"
6013                }
6014              }
6015            },
6016            {
6017              "type": "Property",
6018              "method": false,
6019              "shorthand": true,
6020              "computed": false,
6021              "key": {
6022                "type": "Identifier",
6023                "name": "var19",
6024                "decorators": [],
6025                "loc": {
6026                  "start": {
6027                    "line": 56,
6028                    "column": 15,
6029                    "program": "objectDestructuring.ts"
6030                  },
6031                  "end": {
6032                    "line": 56,
6033                    "column": 20,
6034                    "program": "objectDestructuring.ts"
6035                  }
6036                }
6037              },
6038              "value": {
6039                "type": "Identifier",
6040                "name": "var19",
6041                "decorators": [],
6042                "loc": {
6043                  "start": {
6044                    "line": 56,
6045                    "column": 15,
6046                    "program": "objectDestructuring.ts"
6047                  },
6048                  "end": {
6049                    "line": 56,
6050                    "column": 20,
6051                    "program": "objectDestructuring.ts"
6052                  }
6053                }
6054              },
6055              "kind": "init",
6056              "loc": {
6057                "start": {
6058                  "line": 56,
6059                  "column": 15,
6060                  "program": "objectDestructuring.ts"
6061                },
6062                "end": {
6063                  "line": 56,
6064                  "column": 20,
6065                  "program": "objectDestructuring.ts"
6066                }
6067              }
6068            }
6069          ],
6070          "loc": {
6071            "start": {
6072              "line": 56,
6073              "column": 2,
6074              "program": "objectDestructuring.ts"
6075            },
6076            "end": {
6077              "line": 56,
6078              "column": 22,
6079              "program": "objectDestructuring.ts"
6080            }
6081          }
6082        },
6083        "right": {
6084          "type": "ObjectExpression",
6085          "properties": [
6086            {
6087              "type": "Property",
6088              "method": false,
6089              "shorthand": false,
6090              "computed": false,
6091              "key": {
6092                "type": "Identifier",
6093                "name": "var18",
6094                "decorators": [],
6095                "loc": {
6096                  "start": {
6097                    "line": 56,
6098                    "column": 27,
6099                    "program": "objectDestructuring.ts"
6100                  },
6101                  "end": {
6102                    "line": 56,
6103                    "column": 32,
6104                    "program": "objectDestructuring.ts"
6105                  }
6106                }
6107              },
6108              "value": {
6109                "type": "NumberLiteral",
6110                "value": 1,
6111                "loc": {
6112                  "start": {
6113                    "line": 56,
6114                    "column": 34,
6115                    "program": "objectDestructuring.ts"
6116                  },
6117                  "end": {
6118                    "line": 56,
6119                    "column": 35,
6120                    "program": "objectDestructuring.ts"
6121                  }
6122                }
6123              },
6124              "kind": "init",
6125              "loc": {
6126                "start": {
6127                  "line": 56,
6128                  "column": 27,
6129                  "program": "objectDestructuring.ts"
6130                },
6131                "end": {
6132                  "line": 56,
6133                  "column": 35,
6134                  "program": "objectDestructuring.ts"
6135                }
6136              }
6137            },
6138            {
6139              "type": "Property",
6140              "method": false,
6141              "shorthand": false,
6142              "computed": false,
6143              "key": {
6144                "type": "Identifier",
6145                "name": "var19",
6146                "decorators": [],
6147                "loc": {
6148                  "start": {
6149                    "line": 56,
6150                    "column": 37,
6151                    "program": "objectDestructuring.ts"
6152                  },
6153                  "end": {
6154                    "line": 56,
6155                    "column": 42,
6156                    "program": "objectDestructuring.ts"
6157                  }
6158                }
6159              },
6160              "value": {
6161                "type": "BooleanLiteral",
6162                "value": true,
6163                "loc": {
6164                  "start": {
6165                    "line": 56,
6166                    "column": 44,
6167                    "program": "objectDestructuring.ts"
6168                  },
6169                  "end": {
6170                    "line": 56,
6171                    "column": 48,
6172                    "program": "objectDestructuring.ts"
6173                  }
6174                }
6175              },
6176              "kind": "init",
6177              "loc": {
6178                "start": {
6179                  "line": 56,
6180                  "column": 37,
6181                  "program": "objectDestructuring.ts"
6182                },
6183                "end": {
6184                  "line": 56,
6185                  "column": 48,
6186                  "program": "objectDestructuring.ts"
6187                }
6188              }
6189            }
6190          ],
6191          "loc": {
6192            "start": {
6193              "line": 56,
6194              "column": 25,
6195              "program": "objectDestructuring.ts"
6196            },
6197            "end": {
6198              "line": 56,
6199              "column": 50,
6200              "program": "objectDestructuring.ts"
6201            }
6202          }
6203        },
6204        "loc": {
6205          "start": {
6206            "line": 56,
6207            "column": 1,
6208            "program": "objectDestructuring.ts"
6209          },
6210          "end": {
6211            "line": 56,
6212            "column": 51,
6213            "program": "objectDestructuring.ts"
6214          }
6215        }
6216      },
6217      "loc": {
6218        "start": {
6219          "line": 56,
6220          "column": 1,
6221          "program": "objectDestructuring.ts"
6222        },
6223        "end": {
6224          "line": 56,
6225          "column": 52,
6226          "program": "objectDestructuring.ts"
6227        }
6228      }
6229    },
6230    {
6231      "type": "ExpressionStatement",
6232      "expression": {
6233        "type": "AssignmentExpression",
6234        "operator": "=",
6235        "left": {
6236          "type": "ObjectPattern",
6237          "properties": [
6238            {
6239              "type": "Property",
6240              "method": false,
6241              "shorthand": true,
6242              "computed": false,
6243              "key": {
6244                "type": "Identifier",
6245                "name": "var18",
6246                "decorators": [],
6247                "loc": {
6248                  "start": {
6249                    "line": 57,
6250                    "column": 4,
6251                    "program": "objectDestructuring.ts"
6252                  },
6253                  "end": {
6254                    "line": 57,
6255                    "column": 9,
6256                    "program": "objectDestructuring.ts"
6257                  }
6258                }
6259              },
6260              "value": {
6261                "type": "Identifier",
6262                "name": "var18",
6263                "decorators": [],
6264                "loc": {
6265                  "start": {
6266                    "line": 57,
6267                    "column": 4,
6268                    "program": "objectDestructuring.ts"
6269                  },
6270                  "end": {
6271                    "line": 57,
6272                    "column": 9,
6273                    "program": "objectDestructuring.ts"
6274                  }
6275                }
6276              },
6277              "kind": "init",
6278              "loc": {
6279                "start": {
6280                  "line": 57,
6281                  "column": 4,
6282                  "program": "objectDestructuring.ts"
6283                },
6284                "end": {
6285                  "line": 57,
6286                  "column": 9,
6287                  "program": "objectDestructuring.ts"
6288                }
6289              }
6290            },
6291            {
6292              "type": "Property",
6293              "method": false,
6294              "shorthand": true,
6295              "computed": false,
6296              "key": {
6297                "type": "Identifier",
6298                "name": "var19",
6299                "decorators": [],
6300                "loc": {
6301                  "start": {
6302                    "line": 57,
6303                    "column": 11,
6304                    "program": "objectDestructuring.ts"
6305                  },
6306                  "end": {
6307                    "line": 57,
6308                    "column": 16,
6309                    "program": "objectDestructuring.ts"
6310                  }
6311                }
6312              },
6313              "value": {
6314                "type": "Identifier",
6315                "name": "var19",
6316                "decorators": [],
6317                "loc": {
6318                  "start": {
6319                    "line": 57,
6320                    "column": 11,
6321                    "program": "objectDestructuring.ts"
6322                  },
6323                  "end": {
6324                    "line": 57,
6325                    "column": 16,
6326                    "program": "objectDestructuring.ts"
6327                  }
6328                }
6329              },
6330              "kind": "init",
6331              "loc": {
6332                "start": {
6333                  "line": 57,
6334                  "column": 11,
6335                  "program": "objectDestructuring.ts"
6336                },
6337                "end": {
6338                  "line": 57,
6339                  "column": 16,
6340                  "program": "objectDestructuring.ts"
6341                }
6342              }
6343            }
6344          ],
6345          "loc": {
6346            "start": {
6347              "line": 57,
6348              "column": 2,
6349              "program": "objectDestructuring.ts"
6350            },
6351            "end": {
6352              "line": 57,
6353              "column": 18,
6354              "program": "objectDestructuring.ts"
6355            }
6356          }
6357        },
6358        "right": {
6359          "type": "ObjectExpression",
6360          "properties": [
6361            {
6362              "type": "Property",
6363              "method": false,
6364              "shorthand": false,
6365              "computed": false,
6366              "key": {
6367                "type": "Identifier",
6368                "name": "var19",
6369                "decorators": [],
6370                "loc": {
6371                  "start": {
6372                    "line": 57,
6373                    "column": 23,
6374                    "program": "objectDestructuring.ts"
6375                  },
6376                  "end": {
6377                    "line": 57,
6378                    "column": 28,
6379                    "program": "objectDestructuring.ts"
6380                  }
6381                }
6382              },
6383              "value": {
6384                "type": "BooleanLiteral",
6385                "value": false,
6386                "loc": {
6387                  "start": {
6388                    "line": 57,
6389                    "column": 30,
6390                    "program": "objectDestructuring.ts"
6391                  },
6392                  "end": {
6393                    "line": 57,
6394                    "column": 35,
6395                    "program": "objectDestructuring.ts"
6396                  }
6397                }
6398              },
6399              "kind": "init",
6400              "loc": {
6401                "start": {
6402                  "line": 57,
6403                  "column": 23,
6404                  "program": "objectDestructuring.ts"
6405                },
6406                "end": {
6407                  "line": 57,
6408                  "column": 35,
6409                  "program": "objectDestructuring.ts"
6410                }
6411              }
6412            },
6413            {
6414              "type": "Property",
6415              "method": false,
6416              "shorthand": false,
6417              "computed": false,
6418              "key": {
6419                "type": "Identifier",
6420                "name": "var18",
6421                "decorators": [],
6422                "loc": {
6423                  "start": {
6424                    "line": 57,
6425                    "column": 37,
6426                    "program": "objectDestructuring.ts"
6427                  },
6428                  "end": {
6429                    "line": 57,
6430                    "column": 42,
6431                    "program": "objectDestructuring.ts"
6432                  }
6433                }
6434              },
6435              "value": {
6436                "type": "NumberLiteral",
6437                "value": 3,
6438                "loc": {
6439                  "start": {
6440                    "line": 57,
6441                    "column": 44,
6442                    "program": "objectDestructuring.ts"
6443                  },
6444                  "end": {
6445                    "line": 57,
6446                    "column": 45,
6447                    "program": "objectDestructuring.ts"
6448                  }
6449                }
6450              },
6451              "kind": "init",
6452              "loc": {
6453                "start": {
6454                  "line": 57,
6455                  "column": 37,
6456                  "program": "objectDestructuring.ts"
6457                },
6458                "end": {
6459                  "line": 57,
6460                  "column": 45,
6461                  "program": "objectDestructuring.ts"
6462                }
6463              }
6464            }
6465          ],
6466          "loc": {
6467            "start": {
6468              "line": 57,
6469              "column": 21,
6470              "program": "objectDestructuring.ts"
6471            },
6472            "end": {
6473              "line": 57,
6474              "column": 47,
6475              "program": "objectDestructuring.ts"
6476            }
6477          }
6478        },
6479        "loc": {
6480          "start": {
6481            "line": 57,
6482            "column": 1,
6483            "program": "objectDestructuring.ts"
6484          },
6485          "end": {
6486            "line": 57,
6487            "column": 48,
6488            "program": "objectDestructuring.ts"
6489          }
6490        }
6491      },
6492      "loc": {
6493        "start": {
6494          "line": 57,
6495          "column": 1,
6496          "program": "objectDestructuring.ts"
6497        },
6498        "end": {
6499          "line": 57,
6500          "column": 49,
6501          "program": "objectDestructuring.ts"
6502        }
6503      }
6504    },
6505    {
6506      "type": "ExpressionStatement",
6507      "expression": {
6508        "type": "AssignmentExpression",
6509        "operator": "=",
6510        "left": {
6511          "type": "ObjectPattern",
6512          "properties": [
6513            {
6514              "type": "Property",
6515              "method": false,
6516              "shorthand": true,
6517              "computed": false,
6518              "key": {
6519                "type": "Identifier",
6520                "name": "var18",
6521                "decorators": [],
6522                "loc": {
6523                  "start": {
6524                    "line": 58,
6525                    "column": 4,
6526                    "program": "objectDestructuring.ts"
6527                  },
6528                  "end": {
6529                    "line": 58,
6530                    "column": 9,
6531                    "program": "objectDestructuring.ts"
6532                  }
6533                }
6534              },
6535              "value": {
6536                "type": "Identifier",
6537                "name": "var18",
6538                "decorators": [],
6539                "loc": {
6540                  "start": {
6541                    "line": 58,
6542                    "column": 4,
6543                    "program": "objectDestructuring.ts"
6544                  },
6545                  "end": {
6546                    "line": 58,
6547                    "column": 9,
6548                    "program": "objectDestructuring.ts"
6549                  }
6550                }
6551              },
6552              "kind": "init",
6553              "loc": {
6554                "start": {
6555                  "line": 58,
6556                  "column": 4,
6557                  "program": "objectDestructuring.ts"
6558                },
6559                "end": {
6560                  "line": 58,
6561                  "column": 9,
6562                  "program": "objectDestructuring.ts"
6563                }
6564              }
6565            },
6566            {
6567              "type": "Property",
6568              "method": false,
6569              "shorthand": true,
6570              "computed": false,
6571              "key": {
6572                "type": "Identifier",
6573                "name": "var18",
6574                "decorators": [],
6575                "loc": {
6576                  "start": {
6577                    "line": 58,
6578                    "column": 11,
6579                    "program": "objectDestructuring.ts"
6580                  },
6581                  "end": {
6582                    "line": 58,
6583                    "column": 16,
6584                    "program": "objectDestructuring.ts"
6585                  }
6586                }
6587              },
6588              "value": {
6589                "type": "Identifier",
6590                "name": "var18",
6591                "decorators": [],
6592                "loc": {
6593                  "start": {
6594                    "line": 58,
6595                    "column": 11,
6596                    "program": "objectDestructuring.ts"
6597                  },
6598                  "end": {
6599                    "line": 58,
6600                    "column": 16,
6601                    "program": "objectDestructuring.ts"
6602                  }
6603                }
6604              },
6605              "kind": "init",
6606              "loc": {
6607                "start": {
6608                  "line": 58,
6609                  "column": 11,
6610                  "program": "objectDestructuring.ts"
6611                },
6612                "end": {
6613                  "line": 58,
6614                  "column": 16,
6615                  "program": "objectDestructuring.ts"
6616                }
6617              }
6618            }
6619          ],
6620          "loc": {
6621            "start": {
6622              "line": 58,
6623              "column": 2,
6624              "program": "objectDestructuring.ts"
6625            },
6626            "end": {
6627              "line": 58,
6628              "column": 18,
6629              "program": "objectDestructuring.ts"
6630            }
6631          }
6632        },
6633        "right": {
6634          "type": "ObjectExpression",
6635          "properties": [
6636            {
6637              "type": "Property",
6638              "method": false,
6639              "shorthand": false,
6640              "computed": false,
6641              "key": {
6642                "type": "Identifier",
6643                "name": "var18",
6644                "decorators": [],
6645                "loc": {
6646                  "start": {
6647                    "line": 58,
6648                    "column": 23,
6649                    "program": "objectDestructuring.ts"
6650                  },
6651                  "end": {
6652                    "line": 58,
6653                    "column": 28,
6654                    "program": "objectDestructuring.ts"
6655                  }
6656                }
6657              },
6658              "value": {
6659                "type": "NumberLiteral",
6660                "value": 2,
6661                "loc": {
6662                  "start": {
6663                    "line": 58,
6664                    "column": 30,
6665                    "program": "objectDestructuring.ts"
6666                  },
6667                  "end": {
6668                    "line": 58,
6669                    "column": 31,
6670                    "program": "objectDestructuring.ts"
6671                  }
6672                }
6673              },
6674              "kind": "init",
6675              "loc": {
6676                "start": {
6677                  "line": 58,
6678                  "column": 23,
6679                  "program": "objectDestructuring.ts"
6680                },
6681                "end": {
6682                  "line": 58,
6683                  "column": 31,
6684                  "program": "objectDestructuring.ts"
6685                }
6686              }
6687            }
6688          ],
6689          "loc": {
6690            "start": {
6691              "line": 58,
6692              "column": 21,
6693              "program": "objectDestructuring.ts"
6694            },
6695            "end": {
6696              "line": 58,
6697              "column": 33,
6698              "program": "objectDestructuring.ts"
6699            }
6700          }
6701        },
6702        "loc": {
6703          "start": {
6704            "line": 58,
6705            "column": 1,
6706            "program": "objectDestructuring.ts"
6707          },
6708          "end": {
6709            "line": 58,
6710            "column": 34,
6711            "program": "objectDestructuring.ts"
6712          }
6713        }
6714      },
6715      "loc": {
6716        "start": {
6717          "line": 58,
6718          "column": 1,
6719          "program": "objectDestructuring.ts"
6720        },
6721        "end": {
6722          "line": 58,
6723          "column": 35,
6724          "program": "objectDestructuring.ts"
6725        }
6726      }
6727    },
6728    {
6729      "type": "ExpressionStatement",
6730      "expression": {
6731        "type": "AssignmentExpression",
6732        "operator": "=",
6733        "left": {
6734          "type": "ObjectPattern",
6735          "properties": [
6736            {
6737              "type": "Property",
6738              "method": false,
6739              "shorthand": true,
6740              "computed": false,
6741              "key": {
6742                "type": "Identifier",
6743                "name": "var18",
6744                "decorators": [],
6745                "loc": {
6746                  "start": {
6747                    "line": 59,
6748                    "column": 4,
6749                    "program": "objectDestructuring.ts"
6750                  },
6751                  "end": {
6752                    "line": 59,
6753                    "column": 9,
6754                    "program": "objectDestructuring.ts"
6755                  }
6756                }
6757              },
6758              "value": {
6759                "type": "AssignmentPattern",
6760                "left": {
6761                  "type": "Identifier",
6762                  "name": "var18",
6763                  "decorators": [],
6764                  "loc": {
6765                    "start": {
6766                      "line": 59,
6767                      "column": 4,
6768                      "program": "objectDestructuring.ts"
6769                    },
6770                    "end": {
6771                      "line": 59,
6772                      "column": 9,
6773                      "program": "objectDestructuring.ts"
6774                    }
6775                  }
6776                },
6777                "right": {
6778                  "type": "NumberLiteral",
6779                  "value": 4,
6780                  "loc": {
6781                    "start": {
6782                      "line": 59,
6783                      "column": 12,
6784                      "program": "objectDestructuring.ts"
6785                    },
6786                    "end": {
6787                      "line": 59,
6788                      "column": 13,
6789                      "program": "objectDestructuring.ts"
6790                    }
6791                  }
6792                },
6793                "loc": {
6794                  "start": {
6795                    "line": 59,
6796                    "column": 4,
6797                    "program": "objectDestructuring.ts"
6798                  },
6799                  "end": {
6800                    "line": 59,
6801                    "column": 13,
6802                    "program": "objectDestructuring.ts"
6803                  }
6804                }
6805              },
6806              "kind": "init",
6807              "loc": {
6808                "start": {
6809                  "line": 59,
6810                  "column": 4,
6811                  "program": "objectDestructuring.ts"
6812                },
6813                "end": {
6814                  "line": 59,
6815                  "column": 13,
6816                  "program": "objectDestructuring.ts"
6817                }
6818              }
6819            },
6820            {
6821              "type": "Property",
6822              "method": false,
6823              "shorthand": true,
6824              "computed": false,
6825              "key": {
6826                "type": "Identifier",
6827                "name": "var19",
6828                "decorators": [],
6829                "loc": {
6830                  "start": {
6831                    "line": 59,
6832                    "column": 15,
6833                    "program": "objectDestructuring.ts"
6834                  },
6835                  "end": {
6836                    "line": 59,
6837                    "column": 20,
6838                    "program": "objectDestructuring.ts"
6839                  }
6840                }
6841              },
6842              "value": {
6843                "type": "AssignmentPattern",
6844                "left": {
6845                  "type": "Identifier",
6846                  "name": "var19",
6847                  "decorators": [],
6848                  "loc": {
6849                    "start": {
6850                      "line": 59,
6851                      "column": 15,
6852                      "program": "objectDestructuring.ts"
6853                    },
6854                    "end": {
6855                      "line": 59,
6856                      "column": 20,
6857                      "program": "objectDestructuring.ts"
6858                    }
6859                  }
6860                },
6861                "right": {
6862                  "type": "BooleanLiteral",
6863                  "value": true,
6864                  "loc": {
6865                    "start": {
6866                      "line": 59,
6867                      "column": 23,
6868                      "program": "objectDestructuring.ts"
6869                    },
6870                    "end": {
6871                      "line": 59,
6872                      "column": 27,
6873                      "program": "objectDestructuring.ts"
6874                    }
6875                  }
6876                },
6877                "loc": {
6878                  "start": {
6879                    "line": 59,
6880                    "column": 15,
6881                    "program": "objectDestructuring.ts"
6882                  },
6883                  "end": {
6884                    "line": 59,
6885                    "column": 27,
6886                    "program": "objectDestructuring.ts"
6887                  }
6888                }
6889              },
6890              "kind": "init",
6891              "loc": {
6892                "start": {
6893                  "line": 59,
6894                  "column": 15,
6895                  "program": "objectDestructuring.ts"
6896                },
6897                "end": {
6898                  "line": 59,
6899                  "column": 27,
6900                  "program": "objectDestructuring.ts"
6901                }
6902              }
6903            }
6904          ],
6905          "loc": {
6906            "start": {
6907              "line": 59,
6908              "column": 2,
6909              "program": "objectDestructuring.ts"
6910            },
6911            "end": {
6912              "line": 59,
6913              "column": 29,
6914              "program": "objectDestructuring.ts"
6915            }
6916          }
6917        },
6918        "right": {
6919          "type": "ObjectExpression",
6920          "properties": [
6921            {
6922              "type": "Property",
6923              "method": false,
6924              "shorthand": false,
6925              "computed": false,
6926              "key": {
6927                "type": "Identifier",
6928                "name": "var19",
6929                "decorators": [],
6930                "loc": {
6931                  "start": {
6932                    "line": 59,
6933                    "column": 34,
6934                    "program": "objectDestructuring.ts"
6935                  },
6936                  "end": {
6937                    "line": 59,
6938                    "column": 39,
6939                    "program": "objectDestructuring.ts"
6940                  }
6941                }
6942              },
6943              "value": {
6944                "type": "BooleanLiteral",
6945                "value": false,
6946                "loc": {
6947                  "start": {
6948                    "line": 59,
6949                    "column": 41,
6950                    "program": "objectDestructuring.ts"
6951                  },
6952                  "end": {
6953                    "line": 59,
6954                    "column": 46,
6955                    "program": "objectDestructuring.ts"
6956                  }
6957                }
6958              },
6959              "kind": "init",
6960              "loc": {
6961                "start": {
6962                  "line": 59,
6963                  "column": 34,
6964                  "program": "objectDestructuring.ts"
6965                },
6966                "end": {
6967                  "line": 59,
6968                  "column": 46,
6969                  "program": "objectDestructuring.ts"
6970                }
6971              }
6972            },
6973            {
6974              "type": "Property",
6975              "method": false,
6976              "shorthand": false,
6977              "computed": false,
6978              "key": {
6979                "type": "Identifier",
6980                "name": "var18",
6981                "decorators": [],
6982                "loc": {
6983                  "start": {
6984                    "line": 59,
6985                    "column": 48,
6986                    "program": "objectDestructuring.ts"
6987                  },
6988                  "end": {
6989                    "line": 59,
6990                    "column": 53,
6991                    "program": "objectDestructuring.ts"
6992                  }
6993                }
6994              },
6995              "value": {
6996                "type": "NumberLiteral",
6997                "value": 5,
6998                "loc": {
6999                  "start": {
7000                    "line": 59,
7001                    "column": 55,
7002                    "program": "objectDestructuring.ts"
7003                  },
7004                  "end": {
7005                    "line": 59,
7006                    "column": 56,
7007                    "program": "objectDestructuring.ts"
7008                  }
7009                }
7010              },
7011              "kind": "init",
7012              "loc": {
7013                "start": {
7014                  "line": 59,
7015                  "column": 48,
7016                  "program": "objectDestructuring.ts"
7017                },
7018                "end": {
7019                  "line": 59,
7020                  "column": 56,
7021                  "program": "objectDestructuring.ts"
7022                }
7023              }
7024            }
7025          ],
7026          "loc": {
7027            "start": {
7028              "line": 59,
7029              "column": 32,
7030              "program": "objectDestructuring.ts"
7031            },
7032            "end": {
7033              "line": 59,
7034              "column": 58,
7035              "program": "objectDestructuring.ts"
7036            }
7037          }
7038        },
7039        "loc": {
7040          "start": {
7041            "line": 59,
7042            "column": 1,
7043            "program": "objectDestructuring.ts"
7044          },
7045          "end": {
7046            "line": 59,
7047            "column": 59,
7048            "program": "objectDestructuring.ts"
7049          }
7050        }
7051      },
7052      "loc": {
7053        "start": {
7054          "line": 59,
7055          "column": 1,
7056          "program": "objectDestructuring.ts"
7057        },
7058        "end": {
7059          "line": 59,
7060          "column": 60,
7061          "program": "objectDestructuring.ts"
7062        }
7063      }
7064    },
7065    {
7066      "type": "VariableDeclaration",
7067      "declarations": [
7068        {
7069          "type": "VariableDeclarator",
7070          "id": {
7071            "type": "Identifier",
7072            "name": "var20",
7073            "decorators": [],
7074            "loc": {
7075              "start": {
7076                "line": 61,
7077                "column": 5,
7078                "program": "objectDestructuring.ts"
7079              },
7080              "end": {
7081                "line": 61,
7082                "column": 10,
7083                "program": "objectDestructuring.ts"
7084              }
7085            }
7086          },
7087          "init": {
7088            "type": "ObjectExpression",
7089            "properties": [],
7090            "loc": {
7091              "start": {
7092                "line": 61,
7093                "column": 13,
7094                "program": "objectDestructuring.ts"
7095              },
7096              "end": {
7097                "line": 61,
7098                "column": 15,
7099                "program": "objectDestructuring.ts"
7100              }
7101            }
7102          },
7103          "loc": {
7104            "start": {
7105              "line": 61,
7106              "column": 5,
7107              "program": "objectDestructuring.ts"
7108            },
7109            "end": {
7110              "line": 61,
7111              "column": 15,
7112              "program": "objectDestructuring.ts"
7113            }
7114          }
7115        }
7116      ],
7117      "kind": "var",
7118      "loc": {
7119        "start": {
7120          "line": 61,
7121          "column": 1,
7122          "program": "objectDestructuring.ts"
7123        },
7124        "end": {
7125          "line": 61,
7126          "column": 16,
7127          "program": "objectDestructuring.ts"
7128        }
7129      }
7130    },
7131    {
7132      "type": "ExpressionStatement",
7133      "expression": {
7134        "type": "AssignmentExpression",
7135        "operator": "=",
7136        "left": {
7137          "type": "ObjectPattern",
7138          "properties": [
7139            {
7140              "type": "Property",
7141              "method": false,
7142              "shorthand": true,
7143              "computed": false,
7144              "key": {
7145                "type": "Identifier",
7146                "name": "var19",
7147                "decorators": [],
7148                "loc": {
7149                  "start": {
7150                    "line": 62,
7151                    "column": 4,
7152                    "program": "objectDestructuring.ts"
7153                  },
7154                  "end": {
7155                    "line": 62,
7156                    "column": 9,
7157                    "program": "objectDestructuring.ts"
7158                  }
7159                }
7160              },
7161              "value": {
7162                "type": "Identifier",
7163                "name": "var19",
7164                "decorators": [],
7165                "loc": {
7166                  "start": {
7167                    "line": 62,
7168                    "column": 4,
7169                    "program": "objectDestructuring.ts"
7170                  },
7171                  "end": {
7172                    "line": 62,
7173                    "column": 9,
7174                    "program": "objectDestructuring.ts"
7175                  }
7176                }
7177              },
7178              "kind": "init",
7179              "loc": {
7180                "start": {
7181                  "line": 62,
7182                  "column": 4,
7183                  "program": "objectDestructuring.ts"
7184                },
7185                "end": {
7186                  "line": 62,
7187                  "column": 9,
7188                  "program": "objectDestructuring.ts"
7189                }
7190              }
7191            },
7192            {
7193              "type": "Property",
7194              "method": false,
7195              "shorthand": false,
7196              "computed": false,
7197              "key": {
7198                "type": "Identifier",
7199                "name": "var20",
7200                "decorators": [],
7201                "loc": {
7202                  "start": {
7203                    "line": 62,
7204                    "column": 11,
7205                    "program": "objectDestructuring.ts"
7206                  },
7207                  "end": {
7208                    "line": 62,
7209                    "column": 16,
7210                    "program": "objectDestructuring.ts"
7211                  }
7212                }
7213              },
7214              "value": {
7215                "type": "ObjectPattern",
7216                "properties": [
7217                  {
7218                    "type": "Property",
7219                    "method": false,
7220                    "shorthand": true,
7221                    "computed": false,
7222                    "key": {
7223                      "type": "Identifier",
7224                      "name": "var18",
7225                      "decorators": [],
7226                      "loc": {
7227                        "start": {
7228                          "line": 62,
7229                          "column": 20,
7230                          "program": "objectDestructuring.ts"
7231                        },
7232                        "end": {
7233                          "line": 62,
7234                          "column": 25,
7235                          "program": "objectDestructuring.ts"
7236                        }
7237                      }
7238                    },
7239                    "value": {
7240                      "type": "Identifier",
7241                      "name": "var18",
7242                      "decorators": [],
7243                      "loc": {
7244                        "start": {
7245                          "line": 62,
7246                          "column": 20,
7247                          "program": "objectDestructuring.ts"
7248                        },
7249                        "end": {
7250                          "line": 62,
7251                          "column": 25,
7252                          "program": "objectDestructuring.ts"
7253                        }
7254                      }
7255                    },
7256                    "kind": "init",
7257                    "loc": {
7258                      "start": {
7259                        "line": 62,
7260                        "column": 20,
7261                        "program": "objectDestructuring.ts"
7262                      },
7263                      "end": {
7264                        "line": 62,
7265                        "column": 25,
7266                        "program": "objectDestructuring.ts"
7267                      }
7268                    }
7269                  }
7270                ],
7271                "loc": {
7272                  "start": {
7273                    "line": 62,
7274                    "column": 18,
7275                    "program": "objectDestructuring.ts"
7276                  },
7277                  "end": {
7278                    "line": 62,
7279                    "column": 27,
7280                    "program": "objectDestructuring.ts"
7281                  }
7282                }
7283              },
7284              "kind": "init",
7285              "loc": {
7286                "start": {
7287                  "line": 62,
7288                  "column": 11,
7289                  "program": "objectDestructuring.ts"
7290                },
7291                "end": {
7292                  "line": 62,
7293                  "column": 27,
7294                  "program": "objectDestructuring.ts"
7295                }
7296              }
7297            }
7298          ],
7299          "loc": {
7300            "start": {
7301              "line": 62,
7302              "column": 2,
7303              "program": "objectDestructuring.ts"
7304            },
7305            "end": {
7306              "line": 62,
7307              "column": 29,
7308              "program": "objectDestructuring.ts"
7309            }
7310          }
7311        },
7312        "right": {
7313          "type": "ObjectExpression",
7314          "properties": [
7315            {
7316              "type": "Property",
7317              "method": false,
7318              "shorthand": false,
7319              "computed": false,
7320              "key": {
7321                "type": "Identifier",
7322                "name": "var19",
7323                "decorators": [],
7324                "loc": {
7325                  "start": {
7326                    "line": 62,
7327                    "column": 34,
7328                    "program": "objectDestructuring.ts"
7329                  },
7330                  "end": {
7331                    "line": 62,
7332                    "column": 39,
7333                    "program": "objectDestructuring.ts"
7334                  }
7335                }
7336              },
7337              "value": {
7338                "type": "BooleanLiteral",
7339                "value": true,
7340                "loc": {
7341                  "start": {
7342                    "line": 62,
7343                    "column": 41,
7344                    "program": "objectDestructuring.ts"
7345                  },
7346                  "end": {
7347                    "line": 62,
7348                    "column": 45,
7349                    "program": "objectDestructuring.ts"
7350                  }
7351                }
7352              },
7353              "kind": "init",
7354              "loc": {
7355                "start": {
7356                  "line": 62,
7357                  "column": 34,
7358                  "program": "objectDestructuring.ts"
7359                },
7360                "end": {
7361                  "line": 62,
7362                  "column": 45,
7363                  "program": "objectDestructuring.ts"
7364                }
7365              }
7366            },
7367            {
7368              "type": "Property",
7369              "method": false,
7370              "shorthand": false,
7371              "computed": false,
7372              "key": {
7373                "type": "Identifier",
7374                "name": "var20",
7375                "decorators": [],
7376                "loc": {
7377                  "start": {
7378                    "line": 62,
7379                    "column": 47,
7380                    "program": "objectDestructuring.ts"
7381                  },
7382                  "end": {
7383                    "line": 62,
7384                    "column": 52,
7385                    "program": "objectDestructuring.ts"
7386                  }
7387                }
7388              },
7389              "value": {
7390                "type": "ObjectExpression",
7391                "properties": [
7392                  {
7393                    "type": "Property",
7394                    "method": false,
7395                    "shorthand": false,
7396                    "computed": false,
7397                    "key": {
7398                      "type": "Identifier",
7399                      "name": "var18",
7400                      "decorators": [],
7401                      "loc": {
7402                        "start": {
7403                          "line": 62,
7404                          "column": 56,
7405                          "program": "objectDestructuring.ts"
7406                        },
7407                        "end": {
7408                          "line": 62,
7409                          "column": 61,
7410                          "program": "objectDestructuring.ts"
7411                        }
7412                      }
7413                    },
7414                    "value": {
7415                      "type": "BinaryExpression",
7416                      "operator": "+",
7417                      "left": {
7418                        "type": "NumberLiteral",
7419                        "value": 5,
7420                        "loc": {
7421                          "start": {
7422                            "line": 62,
7423                            "column": 63,
7424                            "program": "objectDestructuring.ts"
7425                          },
7426                          "end": {
7427                            "line": 62,
7428                            "column": 64,
7429                            "program": "objectDestructuring.ts"
7430                          }
7431                        }
7432                      },
7433                      "right": {
7434                        "type": "NumberLiteral",
7435                        "value": 6,
7436                        "loc": {
7437                          "start": {
7438                            "line": 62,
7439                            "column": 67,
7440                            "program": "objectDestructuring.ts"
7441                          },
7442                          "end": {
7443                            "line": 62,
7444                            "column": 68,
7445                            "program": "objectDestructuring.ts"
7446                          }
7447                        }
7448                      },
7449                      "loc": {
7450                        "start": {
7451                          "line": 62,
7452                          "column": 63,
7453                          "program": "objectDestructuring.ts"
7454                        },
7455                        "end": {
7456                          "line": 62,
7457                          "column": 68,
7458                          "program": "objectDestructuring.ts"
7459                        }
7460                      }
7461                    },
7462                    "kind": "init",
7463                    "loc": {
7464                      "start": {
7465                        "line": 62,
7466                        "column": 56,
7467                        "program": "objectDestructuring.ts"
7468                      },
7469                      "end": {
7470                        "line": 62,
7471                        "column": 68,
7472                        "program": "objectDestructuring.ts"
7473                      }
7474                    }
7475                  }
7476                ],
7477                "loc": {
7478                  "start": {
7479                    "line": 62,
7480                    "column": 54,
7481                    "program": "objectDestructuring.ts"
7482                  },
7483                  "end": {
7484                    "line": 62,
7485                    "column": 70,
7486                    "program": "objectDestructuring.ts"
7487                  }
7488                }
7489              },
7490              "kind": "init",
7491              "loc": {
7492                "start": {
7493                  "line": 62,
7494                  "column": 47,
7495                  "program": "objectDestructuring.ts"
7496                },
7497                "end": {
7498                  "line": 62,
7499                  "column": 70,
7500                  "program": "objectDestructuring.ts"
7501                }
7502              }
7503            }
7504          ],
7505          "loc": {
7506            "start": {
7507              "line": 62,
7508              "column": 32,
7509              "program": "objectDestructuring.ts"
7510            },
7511            "end": {
7512              "line": 62,
7513              "column": 72,
7514              "program": "objectDestructuring.ts"
7515            }
7516          }
7517        },
7518        "loc": {
7519          "start": {
7520            "line": 62,
7521            "column": 1,
7522            "program": "objectDestructuring.ts"
7523          },
7524          "end": {
7525            "line": 62,
7526            "column": 73,
7527            "program": "objectDestructuring.ts"
7528          }
7529        }
7530      },
7531      "loc": {
7532        "start": {
7533          "line": 62,
7534          "column": 1,
7535          "program": "objectDestructuring.ts"
7536        },
7537        "end": {
7538          "line": 62,
7539          "column": 74,
7540          "program": "objectDestructuring.ts"
7541        }
7542      }
7543    },
7544    {
7545      "type": "VariableDeclaration",
7546      "declarations": [
7547        {
7548          "type": "VariableDeclarator",
7549          "id": {
7550            "type": "Identifier",
7551            "name": "var21",
7552            "typeAnnotation": {
7553              "type": "TSTypeLiteral",
7554              "members": [],
7555              "loc": {
7556                "start": {
7557                  "line": 64,
7558                  "column": 12,
7559                  "program": "objectDestructuring.ts"
7560                },
7561                "end": {
7562                  "line": 64,
7563                  "column": 14,
7564                  "program": "objectDestructuring.ts"
7565                }
7566              }
7567            },
7568            "decorators": [],
7569            "loc": {
7570              "start": {
7571                "line": 64,
7572                "column": 5,
7573                "program": "objectDestructuring.ts"
7574              },
7575              "end": {
7576                "line": 64,
7577                "column": 10,
7578                "program": "objectDestructuring.ts"
7579              }
7580            }
7581          },
7582          "init": null,
7583          "loc": {
7584            "start": {
7585              "line": 64,
7586              "column": 5,
7587              "program": "objectDestructuring.ts"
7588            },
7589            "end": {
7590              "line": 64,
7591              "column": 10,
7592              "program": "objectDestructuring.ts"
7593            }
7594          }
7595        }
7596      ],
7597      "kind": "var",
7598      "loc": {
7599        "start": {
7600          "line": 64,
7601          "column": 1,
7602          "program": "objectDestructuring.ts"
7603        },
7604        "end": {
7605          "line": 64,
7606          "column": 15,
7607          "program": "objectDestructuring.ts"
7608        }
7609      }
7610    },
7611    {
7612      "type": "ExpressionStatement",
7613      "expression": {
7614        "type": "AssignmentExpression",
7615        "operator": "=",
7616        "left": {
7617          "type": "ObjectPattern",
7618          "properties": [
7619            {
7620              "type": "Property",
7621              "method": false,
7622              "shorthand": true,
7623              "computed": false,
7624              "key": {
7625                "type": "Identifier",
7626                "name": "var18",
7627                "decorators": [],
7628                "loc": {
7629                  "start": {
7630                    "line": 66,
7631                    "column": 4,
7632                    "program": "objectDestructuring.ts"
7633                  },
7634                  "end": {
7635                    "line": 66,
7636                    "column": 9,
7637                    "program": "objectDestructuring.ts"
7638                  }
7639                }
7640              },
7641              "value": {
7642                "type": "Identifier",
7643                "name": "var18",
7644                "decorators": [],
7645                "loc": {
7646                  "start": {
7647                    "line": 66,
7648                    "column": 4,
7649                    "program": "objectDestructuring.ts"
7650                  },
7651                  "end": {
7652                    "line": 66,
7653                    "column": 9,
7654                    "program": "objectDestructuring.ts"
7655                  }
7656                }
7657              },
7658              "kind": "init",
7659              "loc": {
7660                "start": {
7661                  "line": 66,
7662                  "column": 4,
7663                  "program": "objectDestructuring.ts"
7664                },
7665                "end": {
7666                  "line": 66,
7667                  "column": 9,
7668                  "program": "objectDestructuring.ts"
7669                }
7670              }
7671            },
7672            {
7673              "type": "RestElement",
7674              "argument": {
7675                "type": "Identifier",
7676                "name": "var21",
7677                "decorators": [],
7678                "loc": {
7679                  "start": {
7680                    "line": 66,
7681                    "column": 14,
7682                    "program": "objectDestructuring.ts"
7683                  },
7684                  "end": {
7685                    "line": 66,
7686                    "column": 19,
7687                    "program": "objectDestructuring.ts"
7688                  }
7689                }
7690              },
7691              "loc": {
7692                "start": {
7693                  "line": 66,
7694                  "column": 11,
7695                  "program": "objectDestructuring.ts"
7696                },
7697                "end": {
7698                  "line": 66,
7699                  "column": 19,
7700                  "program": "objectDestructuring.ts"
7701                }
7702              }
7703            }
7704          ],
7705          "loc": {
7706            "start": {
7707              "line": 66,
7708              "column": 2,
7709              "program": "objectDestructuring.ts"
7710            },
7711            "end": {
7712              "line": 66,
7713              "column": 21,
7714              "program": "objectDestructuring.ts"
7715            }
7716          }
7717        },
7718        "right": {
7719          "type": "ObjectExpression",
7720          "properties": [
7721            {
7722              "type": "Property",
7723              "method": false,
7724              "shorthand": false,
7725              "computed": false,
7726              "key": {
7727                "type": "Identifier",
7728                "name": "var18",
7729                "decorators": [],
7730                "loc": {
7731                  "start": {
7732                    "line": 66,
7733                    "column": 26,
7734                    "program": "objectDestructuring.ts"
7735                  },
7736                  "end": {
7737                    "line": 66,
7738                    "column": 31,
7739                    "program": "objectDestructuring.ts"
7740                  }
7741                }
7742              },
7743              "value": {
7744                "type": "NumberLiteral",
7745                "value": 7,
7746                "loc": {
7747                  "start": {
7748                    "line": 66,
7749                    "column": 33,
7750                    "program": "objectDestructuring.ts"
7751                  },
7752                  "end": {
7753                    "line": 66,
7754                    "column": 34,
7755                    "program": "objectDestructuring.ts"
7756                  }
7757                }
7758              },
7759              "kind": "init",
7760              "loc": {
7761                "start": {
7762                  "line": 66,
7763                  "column": 26,
7764                  "program": "objectDestructuring.ts"
7765                },
7766                "end": {
7767                  "line": 66,
7768                  "column": 34,
7769                  "program": "objectDestructuring.ts"
7770                }
7771              }
7772            },
7773            {
7774              "type": "Property",
7775              "method": false,
7776              "shorthand": false,
7777              "computed": false,
7778              "key": {
7779                "type": "Identifier",
7780                "name": "a",
7781                "decorators": [],
7782                "loc": {
7783                  "start": {
7784                    "line": 66,
7785                    "column": 36,
7786                    "program": "objectDestructuring.ts"
7787                  },
7788                  "end": {
7789                    "line": 66,
7790                    "column": 37,
7791                    "program": "objectDestructuring.ts"
7792                  }
7793                }
7794              },
7795              "value": {
7796                "type": "BooleanLiteral",
7797                "value": false,
7798                "loc": {
7799                  "start": {
7800                    "line": 66,
7801                    "column": 39,
7802                    "program": "objectDestructuring.ts"
7803                  },
7804                  "end": {
7805                    "line": 66,
7806                    "column": 44,
7807                    "program": "objectDestructuring.ts"
7808                  }
7809                }
7810              },
7811              "kind": "init",
7812              "loc": {
7813                "start": {
7814                  "line": 66,
7815                  "column": 36,
7816                  "program": "objectDestructuring.ts"
7817                },
7818                "end": {
7819                  "line": 66,
7820                  "column": 44,
7821                  "program": "objectDestructuring.ts"
7822                }
7823              }
7824            },
7825            {
7826              "type": "Property",
7827              "method": false,
7828              "shorthand": false,
7829              "computed": false,
7830              "key": {
7831                "type": "Identifier",
7832                "name": "b",
7833                "decorators": [],
7834                "loc": {
7835                  "start": {
7836                    "line": 66,
7837                    "column": 46,
7838                    "program": "objectDestructuring.ts"
7839                  },
7840                  "end": {
7841                    "line": 66,
7842                    "column": 47,
7843                    "program": "objectDestructuring.ts"
7844                  }
7845                }
7846              },
7847              "value": {
7848                "type": "ObjectExpression",
7849                "properties": [
7850                  {
7851                    "type": "Property",
7852                    "method": false,
7853                    "shorthand": false,
7854                    "computed": false,
7855                    "key": {
7856                      "type": "Identifier",
7857                      "name": "c",
7858                      "decorators": [],
7859                      "loc": {
7860                        "start": {
7861                          "line": 66,
7862                          "column": 51,
7863                          "program": "objectDestructuring.ts"
7864                        },
7865                        "end": {
7866                          "line": 66,
7867                          "column": 52,
7868                          "program": "objectDestructuring.ts"
7869                        }
7870                      }
7871                    },
7872                    "value": {
7873                      "type": "StringLiteral",
7874                      "value": "foo",
7875                      "loc": {
7876                        "start": {
7877                          "line": 66,
7878                          "column": 54,
7879                          "program": "objectDestructuring.ts"
7880                        },
7881                        "end": {
7882                          "line": 66,
7883                          "column": 59,
7884                          "program": "objectDestructuring.ts"
7885                        }
7886                      }
7887                    },
7888                    "kind": "init",
7889                    "loc": {
7890                      "start": {
7891                        "line": 66,
7892                        "column": 51,
7893                        "program": "objectDestructuring.ts"
7894                      },
7895                      "end": {
7896                        "line": 66,
7897                        "column": 59,
7898                        "program": "objectDestructuring.ts"
7899                      }
7900                    }
7901                  }
7902                ],
7903                "loc": {
7904                  "start": {
7905                    "line": 66,
7906                    "column": 49,
7907                    "program": "objectDestructuring.ts"
7908                  },
7909                  "end": {
7910                    "line": 66,
7911                    "column": 61,
7912                    "program": "objectDestructuring.ts"
7913                  }
7914                }
7915              },
7916              "kind": "init",
7917              "loc": {
7918                "start": {
7919                  "line": 66,
7920                  "column": 46,
7921                  "program": "objectDestructuring.ts"
7922                },
7923                "end": {
7924                  "line": 66,
7925                  "column": 61,
7926                  "program": "objectDestructuring.ts"
7927                }
7928              }
7929            }
7930          ],
7931          "loc": {
7932            "start": {
7933              "line": 66,
7934              "column": 24,
7935              "program": "objectDestructuring.ts"
7936            },
7937            "end": {
7938              "line": 66,
7939              "column": 63,
7940              "program": "objectDestructuring.ts"
7941            }
7942          }
7943        },
7944        "loc": {
7945          "start": {
7946            "line": 66,
7947            "column": 1,
7948            "program": "objectDestructuring.ts"
7949          },
7950          "end": {
7951            "line": 66,
7952            "column": 64,
7953            "program": "objectDestructuring.ts"
7954          }
7955        }
7956      },
7957      "loc": {
7958        "start": {
7959          "line": 66,
7960          "column": 1,
7961          "program": "objectDestructuring.ts"
7962        },
7963        "end": {
7964          "line": 66,
7965          "column": 65,
7966          "program": "objectDestructuring.ts"
7967        }
7968      }
7969    },
7970    {
7971      "type": "VariableDeclaration",
7972      "declarations": [
7973        {
7974          "type": "VariableDeclarator",
7975          "id": {
7976            "type": "Identifier",
7977            "name": "var22",
7978            "typeAnnotation": {
7979              "type": "TSStringKeyword",
7980              "loc": {
7981                "start": {
7982                  "line": 68,
7983                  "column": 12,
7984                  "program": "objectDestructuring.ts"
7985                },
7986                "end": {
7987                  "line": 68,
7988                  "column": 18,
7989                  "program": "objectDestructuring.ts"
7990                }
7991              }
7992            },
7993            "decorators": [],
7994            "loc": {
7995              "start": {
7996                "line": 68,
7997                "column": 5,
7998                "program": "objectDestructuring.ts"
7999              },
8000              "end": {
8001                "line": 68,
8002                "column": 10,
8003                "program": "objectDestructuring.ts"
8004              }
8005            }
8006          },
8007          "init": null,
8008          "loc": {
8009            "start": {
8010              "line": 68,
8011              "column": 5,
8012              "program": "objectDestructuring.ts"
8013            },
8014            "end": {
8015              "line": 68,
8016              "column": 10,
8017              "program": "objectDestructuring.ts"
8018            }
8019          }
8020        }
8021      ],
8022      "kind": "var",
8023      "loc": {
8024        "start": {
8025          "line": 68,
8026          "column": 1,
8027          "program": "objectDestructuring.ts"
8028        },
8029        "end": {
8030          "line": 68,
8031          "column": 19,
8032          "program": "objectDestructuring.ts"
8033        }
8034      }
8035    },
8036    {
8037      "type": "VariableDeclaration",
8038      "declarations": [
8039        {
8040          "type": "VariableDeclarator",
8041          "id": {
8042            "type": "Identifier",
8043            "name": "var23",
8044            "typeAnnotation": {
8045              "type": "TSTypeReference",
8046              "typeName": {
8047                "type": "Identifier",
8048                "name": "interface2",
8049                "decorators": [],
8050                "loc": {
8051                  "start": {
8052                    "line": 69,
8053                    "column": 12,
8054                    "program": "objectDestructuring.ts"
8055                  },
8056                  "end": {
8057                    "line": 69,
8058                    "column": 22,
8059                    "program": "objectDestructuring.ts"
8060                  }
8061                }
8062              },
8063              "loc": {
8064                "start": {
8065                  "line": 69,
8066                  "column": 12,
8067                  "program": "objectDestructuring.ts"
8068                },
8069                "end": {
8070                  "line": 69,
8071                  "column": 22,
8072                  "program": "objectDestructuring.ts"
8073                }
8074              }
8075            },
8076            "decorators": [],
8077            "loc": {
8078              "start": {
8079                "line": 69,
8080                "column": 5,
8081                "program": "objectDestructuring.ts"
8082              },
8083              "end": {
8084                "line": 69,
8085                "column": 10,
8086                "program": "objectDestructuring.ts"
8087              }
8088            }
8089          },
8090          "init": null,
8091          "loc": {
8092            "start": {
8093              "line": 69,
8094              "column": 5,
8095              "program": "objectDestructuring.ts"
8096            },
8097            "end": {
8098              "line": 69,
8099              "column": 10,
8100              "program": "objectDestructuring.ts"
8101            }
8102          }
8103        }
8104      ],
8105      "kind": "var",
8106      "loc": {
8107        "start": {
8108          "line": 69,
8109          "column": 1,
8110          "program": "objectDestructuring.ts"
8111        },
8112        "end": {
8113          "line": 69,
8114          "column": 23,
8115          "program": "objectDestructuring.ts"
8116        }
8117      }
8118    },
8119    {
8120      "type": "TSInterfaceDeclaration",
8121      "body": {
8122        "type": "TSInterfaceBody",
8123        "body": [
8124          {
8125            "type": "TSPropertySignature",
8126            "computed": false,
8127            "optional": false,
8128            "readonly": false,
8129            "key": {
8130              "type": "Identifier",
8131              "name": "var18",
8132              "decorators": [],
8133              "loc": {
8134                "start": {
8135                  "line": 71,
8136                  "column": 5,
8137                  "program": "objectDestructuring.ts"
8138                },
8139                "end": {
8140                  "line": 71,
8141                  "column": 10,
8142                  "program": "objectDestructuring.ts"
8143                }
8144              }
8145            },
8146            "typeAnnotation": {
8147              "type": "TSNumberKeyword",
8148              "loc": {
8149                "start": {
8150                  "line": 71,
8151                  "column": 12,
8152                  "program": "objectDestructuring.ts"
8153                },
8154                "end": {
8155                  "line": 71,
8156                  "column": 18,
8157                  "program": "objectDestructuring.ts"
8158                }
8159              }
8160            },
8161            "loc": {
8162              "start": {
8163                "line": 71,
8164                "column": 5,
8165                "program": "objectDestructuring.ts"
8166              },
8167              "end": {
8168                "line": 71,
8169                "column": 19,
8170                "program": "objectDestructuring.ts"
8171              }
8172            }
8173          },
8174          {
8175            "type": "TSPropertySignature",
8176            "computed": false,
8177            "optional": false,
8178            "readonly": false,
8179            "key": {
8180              "type": "Identifier",
8181              "name": "var22",
8182              "decorators": [],
8183              "loc": {
8184                "start": {
8185                  "line": 72,
8186                  "column": 5,
8187                  "program": "objectDestructuring.ts"
8188                },
8189                "end": {
8190                  "line": 72,
8191                  "column": 10,
8192                  "program": "objectDestructuring.ts"
8193                }
8194              }
8195            },
8196            "typeAnnotation": {
8197              "type": "TSStringKeyword",
8198              "loc": {
8199                "start": {
8200                  "line": 72,
8201                  "column": 12,
8202                  "program": "objectDestructuring.ts"
8203                },
8204                "end": {
8205                  "line": 72,
8206                  "column": 18,
8207                  "program": "objectDestructuring.ts"
8208                }
8209              }
8210            },
8211            "loc": {
8212              "start": {
8213                "line": 72,
8214                "column": 5,
8215                "program": "objectDestructuring.ts"
8216              },
8217              "end": {
8218                "line": 72,
8219                "column": 19,
8220                "program": "objectDestructuring.ts"
8221              }
8222            }
8223          }
8224        ],
8225        "loc": {
8226          "start": {
8227            "line": 70,
8228            "column": 22,
8229            "program": "objectDestructuring.ts"
8230          },
8231          "end": {
8232            "line": 73,
8233            "column": 2,
8234            "program": "objectDestructuring.ts"
8235          }
8236        }
8237      },
8238      "id": {
8239        "type": "Identifier",
8240        "name": "interface2",
8241        "decorators": [],
8242        "loc": {
8243          "start": {
8244            "line": 70,
8245            "column": 11,
8246            "program": "objectDestructuring.ts"
8247          },
8248          "end": {
8249            "line": 70,
8250            "column": 21,
8251            "program": "objectDestructuring.ts"
8252          }
8253        }
8254      },
8255      "extends": [],
8256      "loc": {
8257        "start": {
8258          "line": 70,
8259          "column": 1,
8260          "program": "objectDestructuring.ts"
8261        },
8262        "end": {
8263          "line": 73,
8264          "column": 2,
8265          "program": "objectDestructuring.ts"
8266        }
8267      }
8268    },
8269    {
8270      "type": "ExpressionStatement",
8271      "expression": {
8272        "type": "AssignmentExpression",
8273        "operator": "=",
8274        "left": {
8275          "type": "ObjectPattern",
8276          "properties": [
8277            {
8278              "type": "Property",
8279              "method": false,
8280              "shorthand": true,
8281              "computed": false,
8282              "key": {
8283                "type": "Identifier",
8284                "name": "var18",
8285                "decorators": [],
8286                "loc": {
8287                  "start": {
8288                    "line": 75,
8289                    "column": 4,
8290                    "program": "objectDestructuring.ts"
8291                  },
8292                  "end": {
8293                    "line": 75,
8294                    "column": 9,
8295                    "program": "objectDestructuring.ts"
8296                  }
8297                }
8298              },
8299              "value": {
8300                "type": "Identifier",
8301                "name": "var18",
8302                "decorators": [],
8303                "loc": {
8304                  "start": {
8305                    "line": 75,
8306                    "column": 4,
8307                    "program": "objectDestructuring.ts"
8308                  },
8309                  "end": {
8310                    "line": 75,
8311                    "column": 9,
8312                    "program": "objectDestructuring.ts"
8313                  }
8314                }
8315              },
8316              "kind": "init",
8317              "loc": {
8318                "start": {
8319                  "line": 75,
8320                  "column": 4,
8321                  "program": "objectDestructuring.ts"
8322                },
8323                "end": {
8324                  "line": 75,
8325                  "column": 9,
8326                  "program": "objectDestructuring.ts"
8327                }
8328              }
8329            },
8330            {
8331              "type": "RestElement",
8332              "argument": {
8333                "type": "Identifier",
8334                "name": "var21",
8335                "decorators": [],
8336                "loc": {
8337                  "start": {
8338                    "line": 75,
8339                    "column": 14,
8340                    "program": "objectDestructuring.ts"
8341                  },
8342                  "end": {
8343                    "line": 75,
8344                    "column": 19,
8345                    "program": "objectDestructuring.ts"
8346                  }
8347                }
8348              },
8349              "loc": {
8350                "start": {
8351                  "line": 75,
8352                  "column": 11,
8353                  "program": "objectDestructuring.ts"
8354                },
8355                "end": {
8356                  "line": 75,
8357                  "column": 19,
8358                  "program": "objectDestructuring.ts"
8359                }
8360              }
8361            }
8362          ],
8363          "loc": {
8364            "start": {
8365              "line": 75,
8366              "column": 2,
8367              "program": "objectDestructuring.ts"
8368            },
8369            "end": {
8370              "line": 75,
8371              "column": 21,
8372              "program": "objectDestructuring.ts"
8373            }
8374          }
8375        },
8376        "right": {
8377          "type": "Identifier",
8378          "name": "var23",
8379          "decorators": [],
8380          "loc": {
8381            "start": {
8382              "line": 75,
8383              "column": 24,
8384              "program": "objectDestructuring.ts"
8385            },
8386            "end": {
8387              "line": 75,
8388              "column": 29,
8389              "program": "objectDestructuring.ts"
8390            }
8391          }
8392        },
8393        "loc": {
8394          "start": {
8395            "line": 75,
8396            "column": 1,
8397            "program": "objectDestructuring.ts"
8398          },
8399          "end": {
8400            "line": 75,
8401            "column": 30,
8402            "program": "objectDestructuring.ts"
8403          }
8404        }
8405      },
8406      "loc": {
8407        "start": {
8408          "line": 75,
8409          "column": 1,
8410          "program": "objectDestructuring.ts"
8411        },
8412        "end": {
8413          "line": 75,
8414          "column": 31,
8415          "program": "objectDestructuring.ts"
8416        }
8417      }
8418    },
8419    {
8420      "type": "ExpressionStatement",
8421      "expression": {
8422        "type": "AssignmentExpression",
8423        "operator": "=",
8424        "left": {
8425          "type": "ObjectPattern",
8426          "properties": [
8427            {
8428              "type": "Property",
8429              "method": false,
8430              "shorthand": true,
8431              "computed": false,
8432              "key": {
8433                "type": "Identifier",
8434                "name": "var18",
8435                "decorators": [],
8436                "loc": {
8437                  "start": {
8438                    "line": 76,
8439                    "column": 4,
8440                    "program": "objectDestructuring.ts"
8441                  },
8442                  "end": {
8443                    "line": 76,
8444                    "column": 9,
8445                    "program": "objectDestructuring.ts"
8446                  }
8447                }
8448              },
8449              "value": {
8450                "type": "Identifier",
8451                "name": "var18",
8452                "decorators": [],
8453                "loc": {
8454                  "start": {
8455                    "line": 76,
8456                    "column": 4,
8457                    "program": "objectDestructuring.ts"
8458                  },
8459                  "end": {
8460                    "line": 76,
8461                    "column": 9,
8462                    "program": "objectDestructuring.ts"
8463                  }
8464                }
8465              },
8466              "kind": "init",
8467              "loc": {
8468                "start": {
8469                  "line": 76,
8470                  "column": 4,
8471                  "program": "objectDestructuring.ts"
8472                },
8473                "end": {
8474                  "line": 76,
8475                  "column": 9,
8476                  "program": "objectDestructuring.ts"
8477                }
8478              }
8479            },
8480            {
8481              "type": "Property",
8482              "method": false,
8483              "shorthand": true,
8484              "computed": false,
8485              "key": {
8486                "type": "Identifier",
8487                "name": "var22",
8488                "decorators": [],
8489                "loc": {
8490                  "start": {
8491                    "line": 76,
8492                    "column": 11,
8493                    "program": "objectDestructuring.ts"
8494                  },
8495                  "end": {
8496                    "line": 76,
8497                    "column": 16,
8498                    "program": "objectDestructuring.ts"
8499                  }
8500                }
8501              },
8502              "value": {
8503                "type": "Identifier",
8504                "name": "var22",
8505                "decorators": [],
8506                "loc": {
8507                  "start": {
8508                    "line": 76,
8509                    "column": 11,
8510                    "program": "objectDestructuring.ts"
8511                  },
8512                  "end": {
8513                    "line": 76,
8514                    "column": 16,
8515                    "program": "objectDestructuring.ts"
8516                  }
8517                }
8518              },
8519              "kind": "init",
8520              "loc": {
8521                "start": {
8522                  "line": 76,
8523                  "column": 11,
8524                  "program": "objectDestructuring.ts"
8525                },
8526                "end": {
8527                  "line": 76,
8528                  "column": 16,
8529                  "program": "objectDestructuring.ts"
8530                }
8531              }
8532            }
8533          ],
8534          "loc": {
8535            "start": {
8536              "line": 76,
8537              "column": 2,
8538              "program": "objectDestructuring.ts"
8539            },
8540            "end": {
8541              "line": 76,
8542              "column": 18,
8543              "program": "objectDestructuring.ts"
8544            }
8545          }
8546        },
8547        "right": {
8548          "type": "Identifier",
8549          "name": "var23",
8550          "decorators": [],
8551          "loc": {
8552            "start": {
8553              "line": 76,
8554              "column": 21,
8555              "program": "objectDestructuring.ts"
8556            },
8557            "end": {
8558              "line": 76,
8559              "column": 26,
8560              "program": "objectDestructuring.ts"
8561            }
8562          }
8563        },
8564        "loc": {
8565          "start": {
8566            "line": 76,
8567            "column": 1,
8568            "program": "objectDestructuring.ts"
8569          },
8570          "end": {
8571            "line": 76,
8572            "column": 27,
8573            "program": "objectDestructuring.ts"
8574          }
8575        }
8576      },
8577      "loc": {
8578        "start": {
8579          "line": 76,
8580          "column": 1,
8581          "program": "objectDestructuring.ts"
8582        },
8583        "end": {
8584          "line": 76,
8585          "column": 28,
8586          "program": "objectDestructuring.ts"
8587        }
8588      }
8589    },
8590    {
8591      "type": "VariableDeclaration",
8592      "declarations": [
8593        {
8594          "type": "VariableDeclarator",
8595          "id": {
8596            "type": "Identifier",
8597            "name": "var24",
8598            "typeAnnotation": {
8599              "type": "TSNumberKeyword",
8600              "loc": {
8601                "start": {
8602                  "line": 78,
8603                  "column": 12,
8604                  "program": "objectDestructuring.ts"
8605                },
8606                "end": {
8607                  "line": 78,
8608                  "column": 18,
8609                  "program": "objectDestructuring.ts"
8610                }
8611              }
8612            },
8613            "decorators": [],
8614            "loc": {
8615              "start": {
8616                "line": 78,
8617                "column": 5,
8618                "program": "objectDestructuring.ts"
8619              },
8620              "end": {
8621                "line": 78,
8622                "column": 10,
8623                "program": "objectDestructuring.ts"
8624              }
8625            }
8626          },
8627          "init": null,
8628          "loc": {
8629            "start": {
8630              "line": 78,
8631              "column": 5,
8632              "program": "objectDestructuring.ts"
8633            },
8634            "end": {
8635              "line": 78,
8636              "column": 10,
8637              "program": "objectDestructuring.ts"
8638            }
8639          }
8640        }
8641      ],
8642      "kind": "var",
8643      "loc": {
8644        "start": {
8645          "line": 78,
8646          "column": 1,
8647          "program": "objectDestructuring.ts"
8648        },
8649        "end": {
8650          "line": 78,
8651          "column": 19,
8652          "program": "objectDestructuring.ts"
8653        }
8654      }
8655    },
8656    {
8657      "type": "VariableDeclaration",
8658      "declarations": [
8659        {
8660          "type": "VariableDeclarator",
8661          "id": {
8662            "type": "Identifier",
8663            "name": "var25",
8664            "typeAnnotation": {
8665              "type": "TSStringKeyword",
8666              "loc": {
8667                "start": {
8668                  "line": 79,
8669                  "column": 12,
8670                  "program": "objectDestructuring.ts"
8671                },
8672                "end": {
8673                  "line": 79,
8674                  "column": 18,
8675                  "program": "objectDestructuring.ts"
8676                }
8677              }
8678            },
8679            "decorators": [],
8680            "loc": {
8681              "start": {
8682                "line": 79,
8683                "column": 5,
8684                "program": "objectDestructuring.ts"
8685              },
8686              "end": {
8687                "line": 79,
8688                "column": 10,
8689                "program": "objectDestructuring.ts"
8690              }
8691            }
8692          },
8693          "init": null,
8694          "loc": {
8695            "start": {
8696              "line": 79,
8697              "column": 5,
8698              "program": "objectDestructuring.ts"
8699            },
8700            "end": {
8701              "line": 79,
8702              "column": 10,
8703              "program": "objectDestructuring.ts"
8704            }
8705          }
8706        }
8707      ],
8708      "kind": "var",
8709      "loc": {
8710        "start": {
8711          "line": 79,
8712          "column": 1,
8713          "program": "objectDestructuring.ts"
8714        },
8715        "end": {
8716          "line": 79,
8717          "column": 19,
8718          "program": "objectDestructuring.ts"
8719        }
8720      }
8721    },
8722    {
8723      "type": "VariableDeclaration",
8724      "declarations": [
8725        {
8726          "type": "VariableDeclarator",
8727          "id": {
8728            "type": "Identifier",
8729            "name": "var26",
8730            "typeAnnotation": {
8731              "type": "TSBooleanKeyword",
8732              "loc": {
8733                "start": {
8734                  "line": 80,
8735                  "column": 12,
8736                  "program": "objectDestructuring.ts"
8737                },
8738                "end": {
8739                  "line": 80,
8740                  "column": 19,
8741                  "program": "objectDestructuring.ts"
8742                }
8743              }
8744            },
8745            "decorators": [],
8746            "loc": {
8747              "start": {
8748                "line": 80,
8749                "column": 5,
8750                "program": "objectDestructuring.ts"
8751              },
8752              "end": {
8753                "line": 80,
8754                "column": 10,
8755                "program": "objectDestructuring.ts"
8756              }
8757            }
8758          },
8759          "init": null,
8760          "loc": {
8761            "start": {
8762              "line": 80,
8763              "column": 5,
8764              "program": "objectDestructuring.ts"
8765            },
8766            "end": {
8767              "line": 80,
8768              "column": 10,
8769              "program": "objectDestructuring.ts"
8770            }
8771          }
8772        }
8773      ],
8774      "kind": "var",
8775      "loc": {
8776        "start": {
8777          "line": 80,
8778          "column": 1,
8779          "program": "objectDestructuring.ts"
8780        },
8781        "end": {
8782          "line": 80,
8783          "column": 20,
8784          "program": "objectDestructuring.ts"
8785        }
8786      }
8787    },
8788    {
8789      "type": "VariableDeclaration",
8790      "declarations": [
8791        {
8792          "type": "VariableDeclarator",
8793          "id": {
8794            "type": "Identifier",
8795            "name": "var27",
8796            "typeAnnotation": {
8797              "type": "TSAnyKeyword",
8798              "loc": {
8799                "start": {
8800                  "line": 81,
8801                  "column": 12,
8802                  "program": "objectDestructuring.ts"
8803                },
8804                "end": {
8805                  "line": 81,
8806                  "column": 15,
8807                  "program": "objectDestructuring.ts"
8808                }
8809              }
8810            },
8811            "decorators": [],
8812            "loc": {
8813              "start": {
8814                "line": 81,
8815                "column": 5,
8816                "program": "objectDestructuring.ts"
8817              },
8818              "end": {
8819                "line": 81,
8820                "column": 10,
8821                "program": "objectDestructuring.ts"
8822              }
8823            }
8824          },
8825          "init": null,
8826          "loc": {
8827            "start": {
8828              "line": 81,
8829              "column": 5,
8830              "program": "objectDestructuring.ts"
8831            },
8832            "end": {
8833              "line": 81,
8834              "column": 10,
8835              "program": "objectDestructuring.ts"
8836            }
8837          }
8838        }
8839      ],
8840      "kind": "var",
8841      "loc": {
8842        "start": {
8843          "line": 81,
8844          "column": 1,
8845          "program": "objectDestructuring.ts"
8846        },
8847        "end": {
8848          "line": 81,
8849          "column": 16,
8850          "program": "objectDestructuring.ts"
8851        }
8852      }
8853    },
8854    {
8855      "type": "ExpressionStatement",
8856      "expression": {
8857        "type": "AssignmentExpression",
8858        "operator": "=",
8859        "left": {
8860          "type": "ObjectPattern",
8861          "properties": [
8862            {
8863              "type": "Property",
8864              "method": false,
8865              "shorthand": false,
8866              "computed": false,
8867              "key": {
8868                "type": "Identifier",
8869                "name": "var27",
8870                "decorators": [],
8871                "loc": {
8872                  "start": {
8873                    "line": 83,
8874                    "column": 4,
8875                    "program": "objectDestructuring.ts"
8876                  },
8877                  "end": {
8878                    "line": 83,
8879                    "column": 9,
8880                    "program": "objectDestructuring.ts"
8881                  }
8882                }
8883              },
8884              "value": {
8885                "type": "ArrayPattern",
8886                "elements": [
8887                  {
8888                    "type": "AssignmentPattern",
8889                    "left": {
8890                      "type": "Identifier",
8891                      "name": "var26",
8892                      "decorators": [],
8893                      "loc": {
8894                        "start": {
8895                          "line": 83,
8896                          "column": 12,
8897                          "program": "objectDestructuring.ts"
8898                        },
8899                        "end": {
8900                          "line": 83,
8901                          "column": 17,
8902                          "program": "objectDestructuring.ts"
8903                        }
8904                      }
8905                    },
8906                    "right": {
8907                      "type": "BooleanLiteral",
8908                      "value": true,
8909                      "loc": {
8910                        "start": {
8911                          "line": 83,
8912                          "column": 20,
8913                          "program": "objectDestructuring.ts"
8914                        },
8915                        "end": {
8916                          "line": 83,
8917                          "column": 24,
8918                          "program": "objectDestructuring.ts"
8919                        }
8920                      }
8921                    },
8922                    "loc": {
8923                      "start": {
8924                        "line": 83,
8925                        "column": 12,
8926                        "program": "objectDestructuring.ts"
8927                      },
8928                      "end": {
8929                        "line": 83,
8930                        "column": 24,
8931                        "program": "objectDestructuring.ts"
8932                      }
8933                    }
8934                  },
8935                  {
8936                    "type": "ArrayPattern",
8937                    "elements": [
8938                      {
8939                        "type": "Identifier",
8940                        "name": "var25",
8941                        "decorators": [],
8942                        "loc": {
8943                          "start": {
8944                            "line": 83,
8945                            "column": 27,
8946                            "program": "objectDestructuring.ts"
8947                          },
8948                          "end": {
8949                            "line": 83,
8950                            "column": 32,
8951                            "program": "objectDestructuring.ts"
8952                          }
8953                        }
8954                      },
8955                      {
8956                        "type": "AssignmentPattern",
8957                        "left": {
8958                          "type": "Identifier",
8959                          "name": "var24",
8960                          "decorators": [],
8961                          "loc": {
8962                            "start": {
8963                              "line": 83,
8964                              "column": 34,
8965                              "program": "objectDestructuring.ts"
8966                            },
8967                            "end": {
8968                              "line": 83,
8969                              "column": 39,
8970                              "program": "objectDestructuring.ts"
8971                            }
8972                          }
8973                        },
8974                        "right": {
8975                          "type": "NumberLiteral",
8976                          "value": 8,
8977                          "loc": {
8978                            "start": {
8979                              "line": 83,
8980                              "column": 42,
8981                              "program": "objectDestructuring.ts"
8982                            },
8983                            "end": {
8984                              "line": 83,
8985                              "column": 43,
8986                              "program": "objectDestructuring.ts"
8987                            }
8988                          }
8989                        },
8990                        "loc": {
8991                          "start": {
8992                            "line": 83,
8993                            "column": 34,
8994                            "program": "objectDestructuring.ts"
8995                          },
8996                          "end": {
8997                            "line": 83,
8998                            "column": 43,
8999                            "program": "objectDestructuring.ts"
9000                          }
9001                        }
9002                      }
9003                    ],
9004                    "loc": {
9005                      "start": {
9006                        "line": 83,
9007                        "column": 26,
9008                        "program": "objectDestructuring.ts"
9009                      },
9010                      "end": {
9011                        "line": 83,
9012                        "column": 44,
9013                        "program": "objectDestructuring.ts"
9014                      }
9015                    }
9016                  }
9017                ],
9018                "loc": {
9019                  "start": {
9020                    "line": 83,
9021                    "column": 11,
9022                    "program": "objectDestructuring.ts"
9023                  },
9024                  "end": {
9025                    "line": 83,
9026                    "column": 45,
9027                    "program": "objectDestructuring.ts"
9028                  }
9029                }
9030              },
9031              "kind": "init",
9032              "loc": {
9033                "start": {
9034                  "line": 83,
9035                  "column": 4,
9036                  "program": "objectDestructuring.ts"
9037                },
9038                "end": {
9039                  "line": 83,
9040                  "column": 45,
9041                  "program": "objectDestructuring.ts"
9042                }
9043              }
9044            }
9045          ],
9046          "loc": {
9047            "start": {
9048              "line": 83,
9049              "column": 2,
9050              "program": "objectDestructuring.ts"
9051            },
9052            "end": {
9053              "line": 83,
9054              "column": 47,
9055              "program": "objectDestructuring.ts"
9056            }
9057          }
9058        },
9059        "right": {
9060          "type": "ObjectExpression",
9061          "properties": [
9062            {
9063              "type": "Property",
9064              "method": false,
9065              "shorthand": false,
9066              "computed": false,
9067              "key": {
9068                "type": "Identifier",
9069                "name": "var27",
9070                "decorators": [],
9071                "loc": {
9072                  "start": {
9073                    "line": 83,
9074                    "column": 52,
9075                    "program": "objectDestructuring.ts"
9076                  },
9077                  "end": {
9078                    "line": 83,
9079                    "column": 57,
9080                    "program": "objectDestructuring.ts"
9081                  }
9082                }
9083              },
9084              "value": {
9085                "type": "ArrayExpression",
9086                "elements": [
9087                  {
9088                    "type": "BooleanLiteral",
9089                    "value": false,
9090                    "loc": {
9091                      "start": {
9092                        "line": 83,
9093                        "column": 60,
9094                        "program": "objectDestructuring.ts"
9095                      },
9096                      "end": {
9097                        "line": 83,
9098                        "column": 65,
9099                        "program": "objectDestructuring.ts"
9100                      }
9101                    }
9102                  },
9103                  {
9104                    "type": "ArrayExpression",
9105                    "elements": [
9106                      {
9107                        "type": "StringLiteral",
9108                        "value": "foo",
9109                        "loc": {
9110                          "start": {
9111                            "line": 83,
9112                            "column": 68,
9113                            "program": "objectDestructuring.ts"
9114                          },
9115                          "end": {
9116                            "line": 83,
9117                            "column": 73,
9118                            "program": "objectDestructuring.ts"
9119                          }
9120                        }
9121                      }
9122                    ],
9123                    "loc": {
9124                      "start": {
9125                        "line": 83,
9126                        "column": 67,
9127                        "program": "objectDestructuring.ts"
9128                      },
9129                      "end": {
9130                        "line": 83,
9131                        "column": 74,
9132                        "program": "objectDestructuring.ts"
9133                      }
9134                    }
9135                  }
9136                ],
9137                "loc": {
9138                  "start": {
9139                    "line": 83,
9140                    "column": 59,
9141                    "program": "objectDestructuring.ts"
9142                  },
9143                  "end": {
9144                    "line": 83,
9145                    "column": 75,
9146                    "program": "objectDestructuring.ts"
9147                  }
9148                }
9149              },
9150              "kind": "init",
9151              "loc": {
9152                "start": {
9153                  "line": 83,
9154                  "column": 52,
9155                  "program": "objectDestructuring.ts"
9156                },
9157                "end": {
9158                  "line": 83,
9159                  "column": 75,
9160                  "program": "objectDestructuring.ts"
9161                }
9162              }
9163            }
9164          ],
9165          "loc": {
9166            "start": {
9167              "line": 83,
9168              "column": 50,
9169              "program": "objectDestructuring.ts"
9170            },
9171            "end": {
9172              "line": 83,
9173              "column": 77,
9174              "program": "objectDestructuring.ts"
9175            }
9176          }
9177        },
9178        "loc": {
9179          "start": {
9180            "line": 83,
9181            "column": 1,
9182            "program": "objectDestructuring.ts"
9183          },
9184          "end": {
9185            "line": 83,
9186            "column": 78,
9187            "program": "objectDestructuring.ts"
9188          }
9189        }
9190      },
9191      "loc": {
9192        "start": {
9193          "line": 83,
9194          "column": 1,
9195          "program": "objectDestructuring.ts"
9196        },
9197        "end": {
9198          "line": 83,
9199          "column": 78,
9200          "program": "objectDestructuring.ts"
9201        }
9202      }
9203    },
9204    {
9205      "type": "VariableDeclaration",
9206      "declarations": [
9207        {
9208          "type": "VariableDeclarator",
9209          "id": {
9210            "type": "Identifier",
9211            "name": "var28",
9212            "typeAnnotation": {
9213              "type": "TSNumberKeyword",
9214              "loc": {
9215                "start": {
9216                  "line": 85,
9217                  "column": 12,
9218                  "program": "objectDestructuring.ts"
9219                },
9220                "end": {
9221                  "line": 85,
9222                  "column": 18,
9223                  "program": "objectDestructuring.ts"
9224                }
9225              }
9226            },
9227            "decorators": [],
9228            "loc": {
9229              "start": {
9230                "line": 85,
9231                "column": 5,
9232                "program": "objectDestructuring.ts"
9233              },
9234              "end": {
9235                "line": 85,
9236                "column": 10,
9237                "program": "objectDestructuring.ts"
9238              }
9239            }
9240          },
9241          "init": null,
9242          "loc": {
9243            "start": {
9244              "line": 85,
9245              "column": 5,
9246              "program": "objectDestructuring.ts"
9247            },
9248            "end": {
9249              "line": 85,
9250              "column": 10,
9251              "program": "objectDestructuring.ts"
9252            }
9253          }
9254        }
9255      ],
9256      "kind": "var",
9257      "loc": {
9258        "start": {
9259          "line": 85,
9260          "column": 1,
9261          "program": "objectDestructuring.ts"
9262        },
9263        "end": {
9264          "line": 85,
9265          "column": 19,
9266          "program": "objectDestructuring.ts"
9267        }
9268      }
9269    },
9270    {
9271      "type": "VariableDeclaration",
9272      "declarations": [
9273        {
9274          "type": "VariableDeclarator",
9275          "id": {
9276            "type": "Identifier",
9277            "name": "var29",
9278            "typeAnnotation": {
9279              "type": "TSStringKeyword",
9280              "loc": {
9281                "start": {
9282                  "line": 86,
9283                  "column": 12,
9284                  "program": "objectDestructuring.ts"
9285                },
9286                "end": {
9287                  "line": 86,
9288                  "column": 18,
9289                  "program": "objectDestructuring.ts"
9290                }
9291              }
9292            },
9293            "decorators": [],
9294            "loc": {
9295              "start": {
9296                "line": 86,
9297                "column": 5,
9298                "program": "objectDestructuring.ts"
9299              },
9300              "end": {
9301                "line": 86,
9302                "column": 10,
9303                "program": "objectDestructuring.ts"
9304              }
9305            }
9306          },
9307          "init": null,
9308          "loc": {
9309            "start": {
9310              "line": 86,
9311              "column": 5,
9312              "program": "objectDestructuring.ts"
9313            },
9314            "end": {
9315              "line": 86,
9316              "column": 10,
9317              "program": "objectDestructuring.ts"
9318            }
9319          }
9320        }
9321      ],
9322      "kind": "var",
9323      "loc": {
9324        "start": {
9325          "line": 86,
9326          "column": 1,
9327          "program": "objectDestructuring.ts"
9328        },
9329        "end": {
9330          "line": 86,
9331          "column": 19,
9332          "program": "objectDestructuring.ts"
9333        }
9334      }
9335    },
9336    {
9337      "type": "VariableDeclaration",
9338      "declarations": [
9339        {
9340          "type": "VariableDeclarator",
9341          "id": {
9342            "type": "Identifier",
9343            "name": "var30",
9344            "decorators": [],
9345            "loc": {
9346              "start": {
9347                "line": 87,
9348                "column": 5,
9349                "program": "objectDestructuring.ts"
9350              },
9351              "end": {
9352                "line": 87,
9353                "column": 10,
9354                "program": "objectDestructuring.ts"
9355              }
9356            }
9357          },
9358          "init": {
9359            "type": "ObjectExpression",
9360            "properties": [],
9361            "loc": {
9362              "start": {
9363                "line": 87,
9364                "column": 13,
9365                "program": "objectDestructuring.ts"
9366              },
9367              "end": {
9368                "line": 87,
9369                "column": 15,
9370                "program": "objectDestructuring.ts"
9371              }
9372            }
9373          },
9374          "loc": {
9375            "start": {
9376              "line": 87,
9377              "column": 5,
9378              "program": "objectDestructuring.ts"
9379            },
9380            "end": {
9381              "line": 87,
9382              "column": 15,
9383              "program": "objectDestructuring.ts"
9384            }
9385          }
9386        }
9387      ],
9388      "kind": "var",
9389      "loc": {
9390        "start": {
9391          "line": 87,
9392          "column": 1,
9393          "program": "objectDestructuring.ts"
9394        },
9395        "end": {
9396          "line": 87,
9397          "column": 16,
9398          "program": "objectDestructuring.ts"
9399        }
9400      }
9401    },
9402    {
9403      "type": "ExpressionStatement",
9404      "expression": {
9405        "type": "AssignmentExpression",
9406        "operator": "=",
9407        "left": {
9408          "type": "ObjectPattern",
9409          "properties": [
9410            {
9411              "type": "Property",
9412              "method": false,
9413              "shorthand": false,
9414              "computed": false,
9415              "key": {
9416                "type": "Identifier",
9417                "name": "var30",
9418                "decorators": [],
9419                "loc": {
9420                  "start": {
9421                    "line": 89,
9422                    "column": 4,
9423                    "program": "objectDestructuring.ts"
9424                  },
9425                  "end": {
9426                    "line": 89,
9427                    "column": 9,
9428                    "program": "objectDestructuring.ts"
9429                  }
9430                }
9431              },
9432              "value": {
9433                "type": "AssignmentPattern",
9434                "left": {
9435                  "type": "ObjectPattern",
9436                  "properties": [
9437                    {
9438                      "type": "Property",
9439                      "method": false,
9440                      "shorthand": true,
9441                      "computed": false,
9442                      "key": {
9443                        "type": "Identifier",
9444                        "name": "var29",
9445                        "decorators": [],
9446                        "loc": {
9447                          "start": {
9448                            "line": 89,
9449                            "column": 13,
9450                            "program": "objectDestructuring.ts"
9451                          },
9452                          "end": {
9453                            "line": 89,
9454                            "column": 18,
9455                            "program": "objectDestructuring.ts"
9456                          }
9457                        }
9458                      },
9459                      "value": {
9460                        "type": "AssignmentPattern",
9461                        "left": {
9462                          "type": "Identifier",
9463                          "name": "var29",
9464                          "decorators": [],
9465                          "loc": {
9466                            "start": {
9467                              "line": 89,
9468                              "column": 13,
9469                              "program": "objectDestructuring.ts"
9470                            },
9471                            "end": {
9472                              "line": 89,
9473                              "column": 18,
9474                              "program": "objectDestructuring.ts"
9475                            }
9476                          }
9477                        },
9478                        "right": {
9479                          "type": "StringLiteral",
9480                          "value": "foo",
9481                          "loc": {
9482                            "start": {
9483                              "line": 89,
9484                              "column": 21,
9485                              "program": "objectDestructuring.ts"
9486                            },
9487                            "end": {
9488                              "line": 89,
9489                              "column": 26,
9490                              "program": "objectDestructuring.ts"
9491                            }
9492                          }
9493                        },
9494                        "loc": {
9495                          "start": {
9496                            "line": 89,
9497                            "column": 13,
9498                            "program": "objectDestructuring.ts"
9499                          },
9500                          "end": {
9501                            "line": 89,
9502                            "column": 26,
9503                            "program": "objectDestructuring.ts"
9504                          }
9505                        }
9506                      },
9507                      "kind": "init",
9508                      "loc": {
9509                        "start": {
9510                          "line": 89,
9511                          "column": 13,
9512                          "program": "objectDestructuring.ts"
9513                        },
9514                        "end": {
9515                          "line": 89,
9516                          "column": 26,
9517                          "program": "objectDestructuring.ts"
9518                        }
9519                      }
9520                    },
9521                    {
9522                      "type": "Property",
9523                      "method": false,
9524                      "shorthand": true,
9525                      "computed": false,
9526                      "key": {
9527                        "type": "Identifier",
9528                        "name": "var28",
9529                        "decorators": [],
9530                        "loc": {
9531                          "start": {
9532                            "line": 89,
9533                            "column": 28,
9534                            "program": "objectDestructuring.ts"
9535                          },
9536                          "end": {
9537                            "line": 89,
9538                            "column": 33,
9539                            "program": "objectDestructuring.ts"
9540                          }
9541                        }
9542                      },
9543                      "value": {
9544                        "type": "Identifier",
9545                        "name": "var28",
9546                        "decorators": [],
9547                        "loc": {
9548                          "start": {
9549                            "line": 89,
9550                            "column": 28,
9551                            "program": "objectDestructuring.ts"
9552                          },
9553                          "end": {
9554                            "line": 89,
9555                            "column": 33,
9556                            "program": "objectDestructuring.ts"
9557                          }
9558                        }
9559                      },
9560                      "kind": "init",
9561                      "loc": {
9562                        "start": {
9563                          "line": 89,
9564                          "column": 28,
9565                          "program": "objectDestructuring.ts"
9566                        },
9567                        "end": {
9568                          "line": 89,
9569                          "column": 33,
9570                          "program": "objectDestructuring.ts"
9571                        }
9572                      }
9573                    }
9574                  ],
9575                  "loc": {
9576                    "start": {
9577                      "line": 89,
9578                      "column": 11,
9579                      "program": "objectDestructuring.ts"
9580                    },
9581                    "end": {
9582                      "line": 89,
9583                      "column": 35,
9584                      "program": "objectDestructuring.ts"
9585                    }
9586                  }
9587                },
9588                "right": {
9589                  "type": "ObjectExpression",
9590                  "properties": [
9591                    {
9592                      "type": "Property",
9593                      "method": false,
9594                      "shorthand": false,
9595                      "computed": false,
9596                      "key": {
9597                        "type": "Identifier",
9598                        "name": "var28",
9599                        "decorators": [],
9600                        "loc": {
9601                          "start": {
9602                            "line": 89,
9603                            "column": 40,
9604                            "program": "objectDestructuring.ts"
9605                          },
9606                          "end": {
9607                            "line": 89,
9608                            "column": 45,
9609                            "program": "objectDestructuring.ts"
9610                          }
9611                        }
9612                      },
9613                      "value": {
9614                        "type": "NumberLiteral",
9615                        "value": 9,
9616                        "loc": {
9617                          "start": {
9618                            "line": 89,
9619                            "column": 47,
9620                            "program": "objectDestructuring.ts"
9621                          },
9622                          "end": {
9623                            "line": 89,
9624                            "column": 48,
9625                            "program": "objectDestructuring.ts"
9626                          }
9627                        }
9628                      },
9629                      "kind": "init",
9630                      "loc": {
9631                        "start": {
9632                          "line": 89,
9633                          "column": 40,
9634                          "program": "objectDestructuring.ts"
9635                        },
9636                        "end": {
9637                          "line": 89,
9638                          "column": 48,
9639                          "program": "objectDestructuring.ts"
9640                        }
9641                      }
9642                    }
9643                  ],
9644                  "loc": {
9645                    "start": {
9646                      "line": 89,
9647                      "column": 38,
9648                      "program": "objectDestructuring.ts"
9649                    },
9650                    "end": {
9651                      "line": 89,
9652                      "column": 50,
9653                      "program": "objectDestructuring.ts"
9654                    }
9655                  }
9656                },
9657                "loc": {
9658                  "start": {
9659                    "line": 89,
9660                    "column": 11,
9661                    "program": "objectDestructuring.ts"
9662                  },
9663                  "end": {
9664                    "line": 89,
9665                    "column": 50,
9666                    "program": "objectDestructuring.ts"
9667                  }
9668                }
9669              },
9670              "kind": "init",
9671              "loc": {
9672                "start": {
9673                  "line": 89,
9674                  "column": 4,
9675                  "program": "objectDestructuring.ts"
9676                },
9677                "end": {
9678                  "line": 89,
9679                  "column": 50,
9680                  "program": "objectDestructuring.ts"
9681                }
9682              }
9683            }
9684          ],
9685          "loc": {
9686            "start": {
9687              "line": 89,
9688              "column": 2,
9689              "program": "objectDestructuring.ts"
9690            },
9691            "end": {
9692              "line": 89,
9693              "column": 52,
9694              "program": "objectDestructuring.ts"
9695            }
9696          }
9697        },
9698        "right": {
9699          "type": "ObjectExpression",
9700          "properties": [
9701            {
9702              "type": "Property",
9703              "method": false,
9704              "shorthand": false,
9705              "computed": false,
9706              "key": {
9707                "type": "Identifier",
9708                "name": "var30",
9709                "decorators": [],
9710                "loc": {
9711                  "start": {
9712                    "line": 89,
9713                    "column": 57,
9714                    "program": "objectDestructuring.ts"
9715                  },
9716                  "end": {
9717                    "line": 89,
9718                    "column": 62,
9719                    "program": "objectDestructuring.ts"
9720                  }
9721                }
9722              },
9723              "value": {
9724                "type": "ObjectExpression",
9725                "properties": [
9726                  {
9727                    "type": "Property",
9728                    "method": false,
9729                    "shorthand": false,
9730                    "computed": false,
9731                    "key": {
9732                      "type": "Identifier",
9733                      "name": "var28",
9734                      "decorators": [],
9735                      "loc": {
9736                        "start": {
9737                          "line": 89,
9738                          "column": 66,
9739                          "program": "objectDestructuring.ts"
9740                        },
9741                        "end": {
9742                          "line": 89,
9743                          "column": 71,
9744                          "program": "objectDestructuring.ts"
9745                        }
9746                      }
9747                    },
9748                    "value": {
9749                      "type": "NumberLiteral",
9750                      "value": 10,
9751                      "loc": {
9752                        "start": {
9753                          "line": 89,
9754                          "column": 73,
9755                          "program": "objectDestructuring.ts"
9756                        },
9757                        "end": {
9758                          "line": 89,
9759                          "column": 75,
9760                          "program": "objectDestructuring.ts"
9761                        }
9762                      }
9763                    },
9764                    "kind": "init",
9765                    "loc": {
9766                      "start": {
9767                        "line": 89,
9768                        "column": 66,
9769                        "program": "objectDestructuring.ts"
9770                      },
9771                      "end": {
9772                        "line": 89,
9773                        "column": 75,
9774                        "program": "objectDestructuring.ts"
9775                      }
9776                    }
9777                  },
9778                  {
9779                    "type": "Property",
9780                    "method": false,
9781                    "shorthand": false,
9782                    "computed": false,
9783                    "key": {
9784                      "type": "Identifier",
9785                      "name": "var29",
9786                      "decorators": [],
9787                      "loc": {
9788                        "start": {
9789                          "line": 89,
9790                          "column": 77,
9791                          "program": "objectDestructuring.ts"
9792                        },
9793                        "end": {
9794                          "line": 89,
9795                          "column": 82,
9796                          "program": "objectDestructuring.ts"
9797                        }
9798                      }
9799                    },
9800                    "value": {
9801                      "type": "StringLiteral",
9802                      "value": "bar",
9803                      "loc": {
9804                        "start": {
9805                          "line": 89,
9806                          "column": 84,
9807                          "program": "objectDestructuring.ts"
9808                        },
9809                        "end": {
9810                          "line": 89,
9811                          "column": 89,
9812                          "program": "objectDestructuring.ts"
9813                        }
9814                      }
9815                    },
9816                    "kind": "init",
9817                    "loc": {
9818                      "start": {
9819                        "line": 89,
9820                        "column": 77,
9821                        "program": "objectDestructuring.ts"
9822                      },
9823                      "end": {
9824                        "line": 89,
9825                        "column": 89,
9826                        "program": "objectDestructuring.ts"
9827                      }
9828                    }
9829                  }
9830                ],
9831                "loc": {
9832                  "start": {
9833                    "line": 89,
9834                    "column": 64,
9835                    "program": "objectDestructuring.ts"
9836                  },
9837                  "end": {
9838                    "line": 89,
9839                    "column": 91,
9840                    "program": "objectDestructuring.ts"
9841                  }
9842                }
9843              },
9844              "kind": "init",
9845              "loc": {
9846                "start": {
9847                  "line": 89,
9848                  "column": 57,
9849                  "program": "objectDestructuring.ts"
9850                },
9851                "end": {
9852                  "line": 89,
9853                  "column": 91,
9854                  "program": "objectDestructuring.ts"
9855                }
9856              }
9857            }
9858          ],
9859          "loc": {
9860            "start": {
9861              "line": 89,
9862              "column": 55,
9863              "program": "objectDestructuring.ts"
9864            },
9865            "end": {
9866              "line": 89,
9867              "column": 93,
9868              "program": "objectDestructuring.ts"
9869            }
9870          }
9871        },
9872        "loc": {
9873          "start": {
9874            "line": 89,
9875            "column": 1,
9876            "program": "objectDestructuring.ts"
9877          },
9878          "end": {
9879            "line": 89,
9880            "column": 94,
9881            "program": "objectDestructuring.ts"
9882          }
9883        }
9884      },
9885      "loc": {
9886        "start": {
9887          "line": 89,
9888          "column": 1,
9889          "program": "objectDestructuring.ts"
9890        },
9891        "end": {
9892          "line": 89,
9893          "column": 95,
9894          "program": "objectDestructuring.ts"
9895        }
9896      }
9897    }
9898  ],
9899  "loc": {
9900    "start": {
9901      "line": 1,
9902      "column": 1,
9903      "program": "objectDestructuring.ts"
9904    },
9905    "end": {
9906      "line": 90,
9907      "column": 1,
9908      "program": "objectDestructuring.ts"
9909    }
9910  }
9911}
9912