[ {"type":"KeywordNamespace","value":"use"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"\u003c"}, {"type":"CommentPreprocFile","value":"write.scad"}, {"type":"Punctuation","value":"\u003e"}, {"type":"Text","value":"\n"}, {"type":"KeywordNamespace","value":"include"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"\u003c"}, {"type":"CommentPreprocFile","value":"../common/base.scad"}, {"type":"Punctuation","value":"\u003e"}, {"type":"Text","value":"\n\n"}, {"type":"CommentMultiline","value":"/*\n\tMultiline\n\tComment\n*/"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"//draw a foobar\n"}, {"type":"KeywordNamespace","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"foobar"}, {"type":"Punctuation","value":"(){"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltin","value":"translate"}, {"type":"Punctuation","value":"(["}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":","}, {"type":"Operator","value":"-"}, {"type":"LiteralNumber","value":"10"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":"])"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltin","value":"difference"}, {"type":"Punctuation","value":"(){"}, {"type":"Text","value":"\n \t"}, {"type":"Name","value":"height"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"5"}, {"type":"Operator","value":"+"}, {"type":"LiteralNumber","value":"6"}, {"type":"Punctuation","value":";"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltin","value":"cube"}, {"type":"Punctuation","value":"(["}, {"type":"Name","value":"height"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"10.04"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"2.99e+8"}, {"type":"Punctuation","value":"]);"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltin","value":"sphere"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"r"}, {"type":"Operator","value":"="}, {"type":"KeywordConstant","value":"PI"}, {"type":"Punctuation","value":","}, {"type":"NameVariableMagic","value":"$fn"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"100"}, {"type":"Punctuation","value":");"}, {"type":"Text","value":"\n "}, {"type":"Punctuation","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Punctuation","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Name","value":"foobar"}, {"type":"Punctuation","value":"();"}, {"type":"Text","value":"\n"}, {"type":"Operator","value":"#"}, {"type":"NameBuiltin","value":"cube"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"(["}, {"type":"LiteralNumber","value":"5"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"5"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"5"}, {"type":"Punctuation","value":"]);"}, {"type":"Text","value":"\n"}, {"type":"NameBuiltin","value":"echo"}, {"type":"Punctuation","value":"("}, {"type":"LiteralStringDouble","value":"\"done\""}, {"type":"Punctuation","value":");"}, {"type":"Text","value":"\n \n"}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"func0"}, {"type":"Punctuation","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"5"}, {"type":"Punctuation","value":";"}, {"type":"Text","value":"\n"}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"func1"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"x"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"3"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"2"}, {"type":"Operator","value":"*"}, {"type":"Name","value":"x"}, {"type":"Operator","value":"+"}, {"type":"LiteralNumber","value":"1"}, {"type":"Punctuation","value":";"}, {"type":"Text","value":"\n"}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"func2"}, {"type":"Punctuation","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"["}, {"type":"LiteralNumber","value":"1"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"2"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"3"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"4"}, {"type":"Punctuation","value":"];"}, {"type":"Text","value":"\n"}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"func3"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"y"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"7"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"y"}, {"type":"Operator","value":"=="}, {"type":"LiteralNumber","value":"7"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"?"}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"5"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":":"}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"2"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":";"}, {"type":"Text","value":"\n"}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"func4"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"p0"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p1"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p2"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p3"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"["}, {"type":"Name","value":"p0"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p1"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p2"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"p3"}, {"type":"Punctuation","value":"];"}, {"type":"Text","value":"\n \n"}, {"type":"NameBuiltin","value":"echo"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"());"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// 5\n"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"func1"}, {"type":"Punctuation","value":"();"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// 7\n"}, {"type":"Name","value":"b"}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"func1"}, {"type":"Punctuation","value":"("}, {"type":"LiteralNumber","value":"5"}, {"type":"Punctuation","value":");"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// 11\n"}, {"type":"NameBuiltin","value":"echo"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"func2"}, {"type":"Punctuation","value":"());"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// [1, 2, 3, 4]\n"}, {"type":"NameBuiltin","value":"echo"}, {"type":"Punctuation","value":"("}, {"type":"Text","value":" "}, {"type":"Name","value":"func3"}, {"type":"Punctuation","value":"("}, {"type":"LiteralNumber","value":"2"}, {"type":"Punctuation","value":"),"}, {"type":"Name","value":"func3"}, {"type":"Punctuation","value":"());"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// 2, 5\n"}, {"type":"Text","value":" \n"}, {"type":"Name","value":"z"}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"func4"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"(),"}, {"type":"Name","value":"func1"}, {"type":"Punctuation","value":"(),"}, {"type":"Name","value":"func2"}, {"type":"Punctuation","value":"(),"}, {"type":"Name","value":"func3"}, {"type":"Punctuation","value":"());"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// [5, 7, [1, 2, 3, 4], 5]\n"}, {"type":"Text","value":" \n"}, {"type":"NameBuiltin","value":"translate"}, {"type":"Punctuation","value":"(["}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":","}, {"type":"Operator","value":"-"}, {"type":"LiteralNumber","value":"4"}, {"type":"Operator","value":"*"}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"(),"}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":"])"}, {"type":"NameBuiltin","value":"cube"}, {"type":"Punctuation","value":"(["}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"(),"}, {"type":"LiteralNumber","value":"2"}, {"type":"Operator","value":"*"}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"(),"}, {"type":"Name","value":"func0"}, {"type":"Punctuation","value":"()]);"}, {"type":"Text","value":"\n\n"}, {"type":"KeywordNamespace","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"parallelogram"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"x"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"1"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"y"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"1"}, {"type":"Punctuation","value":","}, {"type":"Name","value":"angle"}, {"type":"Operator","value":"="}, {"type":"LiteralNumber","value":"90"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":"\n "}, {"type":"Punctuation","value":"{"}, {"type":"NameBuiltin","value":"polygon"}, {"type":"Punctuation","value":"([["}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":"],["}, {"type":"Name","value":"x"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"0"}, {"type":"Punctuation","value":"],"}, {"type":"Text","value":"\n "}, {"type":"Punctuation","value":"["}, {"type":"Name","value":"x"}, {"type":"Operator","value":"+"}, {"type":"Name","value":"x"}, {"type":"Operator","value":"*"}, {"type":"NameBuiltin","value":"cos"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"angle"}, {"type":"Punctuation","value":")"}, {"type":"Operator","value":"/"}, {"type":"NameBuiltin","value":"sin"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"angle"}, {"type":"Punctuation","value":"),"}, {"type":"Name","value":"y"}, {"type":"Punctuation","value":"],"}, {"type":"Text","value":"\n "}, {"type":"Punctuation","value":"["}, {"type":"Name","value":"x"}, {"type":"Operator","value":"*"}, {"type":"NameBuiltin","value":"cos"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"angle"}, {"type":"Punctuation","value":")"}, {"type":"Operator","value":"/"}, {"type":"NameBuiltin","value":"sin"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"angle"}, {"type":"Punctuation","value":"),"}, {"type":"Name","value":"y"}, {"type":"Punctuation","value":"]]);};"}, {"type":"Text","value":"\n \n"}, {"type":"Name","value":"parallelogram"}, {"type":"Punctuation","value":"("}, {"type":"LiteralNumber","value":"10"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"10"}, {"type":"Punctuation","value":","}, {"type":"LiteralNumber","value":"35"}, {"type":"Punctuation","value":");"}, {"type":"Text","value":"\n\n "}, {"type":"KeywordDeclaration","value":"function"}, {"type":"Text","value":" "}, {"type":"NameFunction","value":"add_up_to"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"n"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"("}, {"type":"Text","value":" "}, {"type":"Name","value":"n"}, {"type":"Operator","value":"=="}, {"type":"LiteralNumber","value":"0"}, {"type":"Text","value":" "}, {"type":"Operator","value":"?"}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"0"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"n"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"add_up_to"}, {"type":"Punctuation","value":"("}, {"type":"Name","value":"n"}, {"type":"Operator","value":"-"}, {"type":"LiteralNumber","value":"1"}, {"type":"Punctuation","value":")"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":");"}, {"type":"Text","value":"\n"} ]