[[
   "start",
  ["keyword","import"],
  ["text"," "],
  ["identifier","java"],
  ["text","."],
  ["identifier","util"],
  ["text","."],
  ["identifier","ArrayList"],
  ["text",";"]
],[
   "start",
  ["keyword","import"],
  ["text"," "],
  ["identifier","java"],
  ["text","."],
  ["identifier","util"],
  ["text","."],
  ["identifier","Vector"],
  ["text",";"]
],[
   "start"
],[
   "start",
  ["keyword","public"],
  ["text"," "],
  ["keyword","class"],
  ["text"," "],
  ["identifier","InfiniteLoop"],
  ["text"," "],
  ["lparen","{"]
],[
   "start"
],[
   "comment",
  ["text","    "],
  ["comment","/*"]
],[
   "comment",
  ["comment","     * This will cause the program to hang..."]
],[
   "comment",
  ["comment","     *"]
],[
   "comment",
  ["comment","     * Taken from:"]
],[
   "comment",
  ["comment","     * http://www.exploringbinary.com/java-hangs-when-converting-2-2250738585072012e-308/"]
],[
   "start",
  ["comment","     */"]
],[
   "start",
  ["text","    "],
  ["storage.type.annotation","@Override"]
],[
   "start",
  ["text","    "],
  ["keyword","public"],
  ["text"," "],
  ["keyword","static"],
  ["text"," "],
  ["keyword","void"],
  ["text"," "],
  ["entity.name.function","main"],
  ["lparen","("],
  ["support.function","String"],
  ["lparen","["],
  ["rparen","]"],
  ["text"," "],
  ["identifier","args"],
  ["rparen",")"],
  ["text"," "],
  ["lparen","{"]
],[
   "start",
  ["text","        "],
  ["keyword","double"],
  ["text"," "],
  ["identifier","d"],
  ["text"," "],
  ["keyword.operator","="],
  ["text"," "],
  ["support.function","Double"],
  ["text","."],
  ["entity.name.function","parseDouble"],
  ["lparen","("],
  ["string","\"2.2250738585072012e-308\""],
  ["rparen",")"],
  ["text",";"]
],[
   "start"
],[
   "start",
  ["text","        "],
  ["comment","// unreachable code"]
],[
   "start",
  ["text","        "],
  ["support.function","System"],
  ["text","."],
  ["identifier","out"],
  ["text","."],
  ["entity.name.function","println"],
  ["lparen","("],
  ["string","\"Value: \""],
  ["text"," "],
  ["keyword.operator","+"],
  ["text"," "],
  ["identifier","d"],
  ["rparen",")"],
  ["text",";"]
],[
   "start",
  ["text","    "],
  ["rparen","}"]
],[
   "start",
  ["rparen","}"]
],[
   "start"
],[
   "start",
  ["support.function","String"],
  ["text"," "],
  ["identifier","name"],
  ["text"," "],
  ["keyword.operator","="],
  ["text"," "],
  ["string","\"Joan\""],
  ["text","; "],
  ["support.function","String"],
  ["text"," "],
  ["identifier","info"],
  ["text"," "],
  ["keyword.operator","="],
  ["text"," "],
  ["identifier","STR"],
  ["punctuation","."],
  ["string","\""],
  ["string","My name is "],
  ["lparen","\\{"],
  ["identifier","name"],
  ["rparen","}"],
  ["string","\""],
  ["text",";"]
],[
   "start"
],[
   "start",
  ["identifier","STR"],
  ["punctuation","."],
  ["string","\""],
  ["string","Today's weather is "],
  ["lparen","\\{"],
  ["text"," "],
  ["entity.name.function","getFeelsLike"],
  ["lparen","("],
  ["rparen",")"],
  ["text"," "],
  ["rparen","}"],
  ["string",", with a temperature of "],
  ["lparen","\\{"],
  ["text"," "],
  ["entity.name.function","getTemperature"],
  ["lparen","("],
  ["rparen",")"],
  ["keyword.operator","++"],
  ["text"," "],
  ["rparen","}"],
  ["string"," degrees "],
  ["lparen","\\{"],
  ["text"," "],
  ["entity.name.function","getUnit"],
  ["lparen","("],
  ["rparen",")"],
  ["text"," "],
  ["rparen","}"],
  ["string","\""]
],[
   "start"
],[
   "start",
  ["support.function","String"],
  ["text"," "],
  ["entity.name.function","nestedMultilineTemplates"],
  ["lparen","("],
  ["rparen",")"],
  ["text"," "],
  ["lparen","{"]
],[
   "punctuation",
  ["text","    "],
  ["keyword","return"],
  ["text"," "],
  ["identifier","STR"],
  ["punctuation","."],
  ["string","\"\"\""]
],[
   "punctuation",
  ["string","        {"]
],[
   "punctuation",
  ["string","            \"outerKey1\": \"outerValue1\","]
],[
   ["lparen","punctuation"],
  ["string","            \"nestedTemplate\": \""],
  ["lparen","\\{"]
],[
   ["punctuation","lparen","lparen","punctuation"],
  ["text","                "],
  ["identifier","STR"],
  ["punctuation","."],
  ["string","\"\"\""]
],[
   ["punctuation","lparen","lparen","punctuation"],
  ["string","                {"]
],[
   ["punctuation","lparen","lparen","punctuation"],
  ["string","                    \"innerKey\": \""],
  ["lparen","\\{"],
  ["identifier","innerValue"],
  ["text","."],
  ["entity.name.function","get"],
  ["lparen","("],
  ["rparen",")}"],
  ["string","\""]
],[
   ["punctuation","lparen","lparen","punctuation"],
  ["string","                }"]
],[
   ["lparen","punctuation"],
  ["string","                \"\"\""]
],[
   "punctuation",
  ["text","            "],
  ["rparen","}"],
  ["string","\","]
],[
   "punctuation",
  ["string","            \"outerKey2\": \"outerValue2\""]
],[
   "punctuation",
  ["string","        }"]
],[
   "start",
  ["string","        \"\"\""],
  ["text",";"]
],[
   "start",
  ["rparen","}"]
],[
   "start"
],[
   "start",
  ["keyword","var"],
  ["text"," "],
  ["identifier","to"],
  ["text"," "],
  ["keyword.operator","="],
  ["text"," "],
  ["string","\"working\""],
  ["text",";"]
],[
   "start"
],[
   ["paren.lparen","keyword"],
  ["keyword","module"],
  ["text"," "],
  ["identifier","com"],
  ["punctuation.operator","."],
  ["identifier","example"],
  ["punctuation.operator","."],
  ["identifier","myapp"],
  ["text"," "],
  ["paren.lparen","{"]
],[
   ["doc-start","paren.lparen","paren.lparen","keyword"],
  ["text","    "],
  ["comment.doc","/**"]
],[
   ["doc-start","paren.lparen","paren.lparen","keyword"],
  ["comment.doc.body","     * Test doc comment"]
],[
   ["doc-start","paren.lparen","paren.lparen","keyword"],
  ["comment.doc.body","     * "],
  ["comment.doc.tag","@property"],
  ["comment.doc.body"," test"]
],[
   ["paren.lparen","keyword"],
  ["comment.doc.body","     "],
  ["comment.doc","*/"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["keyword","requires"],
  ["text"," "],
  ["keyword","transitive"],
  ["text"," java.base;"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["comment","//comment"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["keyword","exports"],
  ["text"," com.example.myapp.api;"]
],[
   ["comment","paren.lparen","paren.lparen","keyword"],
  ["text","    "],
  ["comment","/*"]
],[
   ["comment","paren.lparen","paren.lparen","keyword"],
  ["comment","        multiline comment"]
],[
   ["paren.lparen","keyword"],
  ["comment","    */"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["keyword","opens"],
  ["text"," com.example.myapp.internal "],
  ["keyword","to"],
  ["text"," other.module;"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["keyword","uses"],
  ["text"," com.example.myapp.service.MyService;"]
],[
   ["paren.lparen","keyword"],
  ["text","    "],
  ["keyword","provides"],
  ["text"," com.example.myapp.service.MyService "],
  ["keyword","with"],
  ["text"," com.example.myapp.impl.MyServiceImpl;"]
],[
   "keyword",
  ["paren.rparen","}"]
],[
   "start"
]]