type: module
id: 0
range: 1:1 - 13:1
dataflow_sources:
    - 1
children:
    - type: class_definition
      id: 1
      range: 1:1 - 12:31
      queries:
        - 2
      children:
        - type: '"class"'
          id: 2
          range: 1:1 - 1:6
        - type: identifier
          id: 3
          range: 1:7 - 1:12
          content: Greet
        - type: '":"'
          id: 4
          range: 1:12 - 1:13
        - type: block
          id: 5
          range: 2:5 - 12:31
          dataflow_sources:
            - 6
            - 13
          children:
            - type: expression_statement
              id: 6
              range: 2:5 - 2:29
              dataflow_sources:
                - 7
              children:
                - type: assignment
                  id: 7
                  range: 2:5 - 2:29
                  alias_of:
                    - 10
                  queries:
                    - 1
                  children:
                    - type: identifier
                      id: 8
                      range: 2:5 - 2:13
                      content: Greeting
                    - type: '"="'
                      id: 9
                      range: 2:14 - 2:15
                    - type: string
                      id: 10
                      range: 2:16 - 2:29
                      dataflow_sources:
                        - 11
                        - 12
                      children:
                        - type: '"""'
                          id: 11
                          range: 2:16 - 2:17
                        - type: '"""'
                          id: 12
                          range: 2:28 - 2:29
            - type: function_definition
              id: 13
              range: 4:5 - 12:31
              children:
                - type: '"def"'
                  id: 14
                  range: 4:5 - 4:8
                - type: identifier
                  id: 15
                  range: 4:9 - 4:13
                  content: main
                - type: parameters
                  id: 16
                  range: 4:13 - 4:19
                  children:
                    - type: '"("'
                      id: 17
                      range: 4:13 - 4:14
                    - type: identifier
                      id: 18
                      range: 4:14 - 4:18
                      content: args
                    - type: '")"'
                      id: 19
                      range: 4:18 - 4:19
                - type: '":"'
                  id: 20
                  range: 4:19 - 4:20
                - type: block
                  id: 21
                  range: 5:9 - 12:31
                  dataflow_sources:
                    - 22
                    - 35
                    - 42
                    - 49
                    - 58
                    - 65
                  children:
                    - type: expression_statement
                      id: 22
                      range: 5:9 - 5:33
                      dataflow_sources:
                        - 23
                      children:
                        - type: assignment
                          id: 23
                          range: 5:9 - 5:33
                          alias_of:
                            - 26
                          queries:
                            - 1
                          children:
                            - type: identifier
                              id: 24
                              range: 5:9 - 5:10
                              content: s
                            - type: '"="'
                              id: 25
                              range: 5:11 - 5:12
                            - type: binary_operator
                              id: 26
                              range: 5:13 - 5:33
                              dataflow_sources:
                                - 27
                                - 31
                                - 32
                              children:
                                - type: attribute
                                  id: 27
                                  range: 5:13 - 5:27
                                  dataflow_sources:
                                    - 28
                                  queries:
                                    - 3
                                  children:
                                    - type: identifier
                                      id: 28
                                      range: 5:13 - 5:18
                                      content: Greet
                                    - type: '"."'
                                      id: 29
                                      range: 5:18 - 5:19
                                    - type: identifier
                                      id: 30
                                      range: 5:19 - 5:27
                                      content: Greeting
                                - type: '"+"'
                                  id: 31
                                  range: 5:28 - 5:29
                                - type: string
                                  id: 32
                                  range: 5:30 - 5:33
                                  dataflow_sources:
                                    - 33
                                    - 34
                                  children:
                                    - type: '"""'
                                      id: 33
                                      range: 5:30 - 5:31
                                    - type: '"""'
                                      id: 34
                                      range: 5:32 - 5:33
                    - type: expression_statement
                      id: 35
                      range: 6:9 - 6:18
                      dataflow_sources:
                        - 36
                      children:
                        - type: augmented_assignment
                          id: 36
                          range: 6:9 - 6:18
                          dataflow_sources:
                            - 37
                            - 39
                          children:
                            - type: identifier
                              id: 37
                              range: 6:9 - 6:10
                              content: s
                              alias_of:
                                - 23
                            - type: '"+="'
                              id: 38
                              range: 6:11 - 6:13
                            - type: string
                              id: 39
                              range: 6:14 - 6:18
                              dataflow_sources:
                                - 40
                                - 41
                              children:
                                - type: '"""'
                                  id: 40
                                  range: 6:14 - 6:15
                                - type: '"""'
                                  id: 41
                                  range: 6:17 - 6:18
                    - type: expression_statement
                      id: 42
                      range: 8:9 - 8:20
                      dataflow_sources:
                        - 43
                      children:
                        - type: assignment
                          id: 43
                          range: 8:9 - 8:20
                          alias_of:
                            - 46
                          queries:
                            - 1
                          children:
                            - type: identifier
                              id: 44
                              range: 8:9 - 8:11
                              content: s2
                            - type: '"="'
                              id: 45
                              range: 8:12 - 8:13
                            - type: string
                              id: 46
                              range: 8:14 - 8:20
                              dataflow_sources:
                                - 47
                                - 48
                              children:
                                - type: '"""'
                                  id: 47
                                  range: 8:14 - 8:15
                                - type: '"""'
                                  id: 48
                                  range: 8:19 - 8:20
                    - type: expression_statement
                      id: 49
                      range: 9:9 - 9:22
                      dataflow_sources:
                        - 50
                      children:
                        - type: augmented_assignment
                          id: 50
                          range: 9:9 - 9:22
                          dataflow_sources:
                            - 51
                            - 53
                          children:
                            - type: identifier
                              id: 51
                              range: 9:9 - 9:11
                              content: s2
                              alias_of:
                                - 43
                            - type: '"+="'
                              id: 52
                              range: 9:12 - 9:14
                            - type: subscript
                              id: 53
                              range: 9:15 - 9:22
                              dataflow_sources:
                                - 54
                              queries:
                                - 4
                              children:
                                - type: identifier
                                  id: 54
                                  range: 9:15 - 9:19
                                  content: args
                                  alias_of:
                                    - 18
                                - type: '"["'
                                  id: 55
                                  range: 9:19 - 9:20
                                - type: integer
                                  id: 56
                                  range: 9:20 - 9:21
                                  content: "0"
                                - type: '"]"'
                                  id: 57
                                  range: 9:21 - 9:22
                    - type: expression_statement
                      id: 58
                      range: 10:9 - 10:23
                      dataflow_sources:
                        - 59
                      children:
                        - type: augmented_assignment
                          id: 59
                          range: 10:9 - 10:23
                          dataflow_sources:
                            - 60
                            - 62
                          children:
                            - type: identifier
                              id: 60
                              range: 10:9 - 10:11
                              content: s2
                              alias_of:
                                - 50
                            - type: '"+="'
                              id: 61
                              range: 10:12 - 10:14
                            - type: string
                              id: 62
                              range: 10:15 - 10:23
                              dataflow_sources:
                                - 63
                                - 64
                              children:
                                - type: '"""'
                                  id: 63
                                  range: 10:15 - 10:16
                                - type: '"""'
                                  id: 64
                                  range: 10:22 - 10:23
                    - type: expression_statement
                      id: 65
                      range: 12:9 - 12:31
                      dataflow_sources:
                        - 66
                      children:
                        - type: assignment
                          id: 66
                          range: 12:9 - 12:31
                          alias_of:
                            - 69
                          queries:
                            - 1
                          children:
                            - type: identifier
                              id: 67
                              range: 12:9 - 12:11
                              content: s3
                            - type: '"="'
                              id: 68
                              range: 12:12 - 12:13
                            - type: string
                              id: 69
                              range: 12:14 - 12:31
                              dataflow_sources:
                                - 70
                                - 71
                                - 75
                              children:
                                - type: '"""'
                                  id: 70
                                  range: 12:14 - 12:16
                                - type: interpolation
                                  id: 71
                                  range: 12:21 - 12:25
                                  alias_of:
                                    - 72
                                    - 73
                                    - 74
                                  children:
                                    - type: '"{"'
                                      id: 72
                                      range: 12:21 - 12:22
                                    - type: identifier
                                      id: 73
                                      range: 12:22 - 12:24
                                      content: s2
                                      alias_of:
                                        - 59
                                    - type: '"}"'
                                      id: 74
                                      range: 12:24 - 12:25
                                - type: '"""'
                                  id: 75
                                  range: 12:30 - 12:31

- node: 10
  content: '"Hello World"'
  data:
    value: Hello World
    isliteral: true
- node: 36
  content: s += "!!"
  data:
    value: �!!!
    isliteral: false
- node: 50
  content: s2 += args[0]
  data:
    value: hey �
    isliteral: false
- node: 59
  content: s2 += " there"
  data:
    value: hey � there
    isliteral: false
- node: 26
  content: Greet.Greeting + "!"
  data:
    value: �!
    isliteral: false
- node: 39
  content: '"!!"'
  data:
    value: '!!'
    isliteral: true
- node: 46
  content: '"hey "'
  data:
    value: 'hey '
    isliteral: true
- node: 62
  content: '" there"'
  data:
    value: ' there'
    isliteral: true
- node: 69
  content: f"foo '{s2}' bar"
  data:
    value: foo 'hey � there' bar
    isliteral: false
- node: 32
  content: '"!"'
  data:
    value: '!'
    isliteral: true

