static TextSpan transformationsDemo()

in lib/codeviewer/code_segments.dart [44295:47401]


  static TextSpan transformationsDemo(BuildContext context) {
    final codeStyle = CodeStyle.of(context);
    return TextSpan(children: [
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Copyright 2019 The Flutter team. All rights reserved.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Use of this source code is governed by a BSD-style license that can be'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle, text: '// found in the LICENSE file.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(style: codeStyle.commentStyle, text: '// @dart=2.9'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'import'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.stringStyle, text: '\u0027dart:collection\u0027'),
      TextSpan(style: codeStyle.baseStyle, text: ' show '),
      TextSpan(style: codeStyle.classStyle, text: 'IterableMixin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'import'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.stringStyle, text: '\u0027dart:math\u0027'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'import'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.stringStyle, text: '\u0027dart:ui\u0027'),
      TextSpan(style: codeStyle.baseStyle, text: ' show '),
      TextSpan(style: codeStyle.classStyle, text: 'Vertices'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'import'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.stringStyle,
          text: '\u0027package:flutter/material.dart\u0027'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'import'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.stringStyle,
          text: '\u0027package:vector_math/vector_math_64.dart\u0027'),
      TextSpan(style: codeStyle.baseStyle, text: ' show '),
      TextSpan(style: codeStyle.classStyle, text: 'Vector3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'TransformationsDemo'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'extends'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'StatefulWidget'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'TransformationsDemo'),
      TextSpan(style: codeStyle.punctuationStyle, text: '({'),
      TextSpan(style: codeStyle.classStyle, text: 'Key'),
      TextSpan(style: codeStyle.baseStyle, text: ' key'),
      TextSpan(style: codeStyle.punctuationStyle, text: '})'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'super'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'key'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' key'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: '_TransformationsDemoState'),
      TextSpan(style: codeStyle.baseStyle, text: ' createState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_TransformationsDemoState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_TransformationsDemoState'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'extends'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'State'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'TransformationsDemo'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'with'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'TickerProviderStateMixin'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'GlobalKey'),
      TextSpan(style: codeStyle.baseStyle, text: ' _targetKey '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'GlobalKey'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// The radius of a hexagon tile in pixels.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'static'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kHexagonRadius'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '16.0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// The margin between hexagons.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'static'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kHexagonMargin'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// The radius of the entire board in hexagons, not including the center.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'static'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kBoardRadius'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '8'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kBoardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kHexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.constantStyle, text: '_kHexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'TransformationController'),
      TextSpan(style: codeStyle.baseStyle, text: ' _transformationController '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'TransformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Animation'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'Matrix4'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' _animationReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'AnimationController'),
      TextSpan(style: codeStyle.baseStyle, text: ' _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Matrix4'),
      TextSpan(style: codeStyle.baseStyle, text: ' _homeMatrix'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Handle reset to home transform animation.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' _onAnimateReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a    _transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'value '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _animationReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'value'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(!'),
      TextSpan(style: codeStyle.baseStyle, text: '_controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'isAnimating'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      _animationReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '?.'),
      TextSpan(style: codeStyle.baseStyle, text: 'removeListener'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_onAnimateReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a      _animationReset '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a      _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'reset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Initialize the reset to home transform animation.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' _animateResetInitialize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'reset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _animationReset '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Matrix4Tween'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      begin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'value'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      end'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _homeMatrix'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'animate'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'duration '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Duration'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'milliseconds'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '400'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _animationReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'addListener'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_onAnimateReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'forward'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Stop a running reset to home transform animation.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' _animateResetStop'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'stop'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _animationReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '?.'),
      TextSpan(style: codeStyle.baseStyle, text: 'removeListener'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_onAnimateReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _animationReset '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'reset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' _onScaleStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'ScaleStartDetails'),
      TextSpan(style: codeStyle.baseStyle, text: ' details'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// If the user tries to cause a transformation while the reset animation is'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// running, cancel the reset animation.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'status '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'AnimationStatus'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'forward'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a      _animateResetStop'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' _onTapUp'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'TapUpDetails'),
      TextSpan(style: codeStyle.baseStyle, text: ' details'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' renderBox '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _targetKey'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'currentContext'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'findRenderObject'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'as'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'RenderBox'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' offset '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        details'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'globalPosition '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' renderBox'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'localToGlobal'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'zero'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' scenePoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'toScene'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'pointToBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'scenePoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    setState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      _board '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'copyWithSelected'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' initState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'super'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'initState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'AnimationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      vsync'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Widget'),
      TextSpan(style: codeStyle.baseStyle, text: ' build'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BuildContext'),
      TextSpan(style: codeStyle.baseStyle, text: ' context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// The scene is drawn by a CustomPaint, but user interaction is handled by'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// the InteractiveViewer parent widget.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Scaffold'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      backgroundColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Theme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'of'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'colorScheme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'primary'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      appBar'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'AppBar'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a        automaticallyImplyLeading'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'false'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        title'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.classStyle, text: 'Text'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'GalleryLocalizations'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'of'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'demo2dTransformationsTitle'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      body'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Container'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' backgroundColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'LayoutBuilder'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          builder'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' constraints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Draw the scene as big as is available, but allow the user to'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// translate beyond that to a visibleSize that\u0027s a bit bigger.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' viewportSize '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a              constraints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'maxWidth'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a              constraints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'maxHeight'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a            '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Start the first render, start the scene centered in the viewport.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_homeMatrix '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a              _homeMatrix '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Matrix4'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'identity'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                '),
      TextSpan(style: codeStyle.punctuationStyle, text: '..'),
      TextSpan(style: codeStyle.baseStyle, text: 'translate'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                  viewportSize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'width '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'width '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                  viewportSize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'height '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'height '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a              _transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'value '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _homeMatrix'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a            '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'ClipRect'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a              child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'MouseRegion'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                cursor'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'SystemMouseCursors'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'click'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'GestureDetector'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                  behavior'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'HitTestBehavior'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'opaque'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                  onTapUp'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _onTapUp'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                  child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'InteractiveViewer'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                    key'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _targetKey'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                    transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _transformationController'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                    boundaryMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'EdgeInsets'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'symmetric'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                      horizontal'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' viewportSize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'width'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                      vertical'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' viewportSize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'height'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                    minScale'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0.01'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                    onInteractionStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _onScaleStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                    child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'SizedBox'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'expand'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                      child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'CustomPaint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                        size'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'size'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                        painter'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardPainter'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                          board'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                        '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a              '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          '),
      TextSpan(style: codeStyle.punctuationStyle, text: '},'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a      persistentFooterButtons'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '['),
      TextSpan(style: codeStyle.baseStyle, text: 'resetButton'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' editButton'),
      TextSpan(style: codeStyle.punctuationStyle, text: '],'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'IconButton'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' resetButton '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'IconButton'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      onPressed'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        setState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a          _animateResetInitialize'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '},'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      tooltip'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.stringStyle, text: '\u0027Reset\u0027'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Theme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'of'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'colorScheme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'surface'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      icon'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Icon'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Icons'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'replay'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'IconButton'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' editButton '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'IconButton'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      onPressed'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'selected '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a        showModalBottomSheet'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'Widget'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            builder'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a              '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Container'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                width'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'infinity'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                height'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '150'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                padding'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'EdgeInsets'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'all'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '12'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                child'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'EditBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                  boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                  onColorSelection'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                    setState'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                      _board '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'copyWithBoardPointColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a                          _board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(
          style: codeStyle.baseStyle, text: '\u000a                      '),
      TextSpan(style: codeStyle.classStyle, text: 'Navigator'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'pop'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '},'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a                '),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a              '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a            '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '},'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      tooltip'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.stringStyle, text: '\u0027Edit\u0027'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Theme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'of'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'context'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'colorScheme'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'surface'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      icon'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Icon'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Icons'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'edit'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' dispose'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    _controllerReset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dispose'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'super'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dispose'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// CustomPainter is what is passed to CustomPaint and actually draws the scene'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// when its `paint` method is called.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardPainter'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'extends'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'CustomPainter'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardPainter'),
      TextSpan(style: codeStyle.punctuationStyle, text: '({'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'board'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.baseStyle, text: ' board'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' paint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Canvas'),
      TextSpan(style: codeStyle.baseStyle, text: ' canvas'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Size'),
      TextSpan(style: codeStyle.baseStyle, text: ' size'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'void'),
      TextSpan(style: codeStyle.baseStyle, text: ' drawBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' color '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'color'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'withOpacity'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'selected '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '?'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0.7'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' vertices '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'getVerticesForBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      canvas'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'drawVertices'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'vertices'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BlendMode'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Paint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '());'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'forEach'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'drawBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// We should repaint whenever the board changes, such as board.selected.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'bool'),
      TextSpan(style: codeStyle.baseStyle, text: ' shouldRepaint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: '_BoardPainter'),
      TextSpan(style: codeStyle.baseStyle, text: ' oldDelegate'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' oldDelegate'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'board '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' board'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// The entire state of the hex board and abstraction to get information about'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// it. Iterable so that all BoardPoints on the board can be iterated over.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: '@immutable'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'extends'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Object'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'with'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'IterableMixin'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '({'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: '@required'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: '@required'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: '@required'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '})'),
      TextSpan(style: codeStyle.baseStyle, text: '  '),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonMargin '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Set up the positions for the center hexagon where the entire board is'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle, text: '// centered on the origin.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Start point of hexagon (top vertex).'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Point'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>('),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' sqrt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a    positionsForHexagonAtOrigin'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'addAll'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(<'),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>['),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' hexStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadiusPadded'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ']);'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoints '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      _boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'addAll'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'else'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Generate boardPoints for a fresh board.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'var'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _getNextBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'while'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        _boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'add'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _getNextBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Number of hexagons from center to edge.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Pixel radius of a hexagon (center to vertex).'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.commentStyle, text: '// Margin between hexagons.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(
          style: codeStyle.baseStyle, text: ' positionsForHexagonAtOrigin '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>[];'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' _boardPoints '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>[];'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Iterator'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' iterator '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardIterator'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// For a given q axial coordinate, get the range of possible r values'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// See the definition of BoardPoint for more information about hex grids and'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.commentStyle, text: '// axial coordinates.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: '_Range'),
      TextSpan(style: codeStyle.baseStyle, text: ' _getRRangeForQ'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' rStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' rEnd'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '<='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      rStart '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      rEnd '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'else'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      rEnd '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      rStart '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_Range'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'rStart'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' rEnd'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Get the BoardPoint that comes after the given BoardPoint. If given null,'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// returns the origin BoardPoint. If given BoardPoint is the last, returns'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.commentStyle, text: '// null.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' _getNextBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// If before the first element.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(-'),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' rRange '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _getRRangeForQ'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// If at or after the last element.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>='),
      TextSpan(style: codeStyle.baseStyle, text: ' rRange'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'max'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// If wrapping from one q to the next.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>='),
      TextSpan(style: codeStyle.baseStyle, text: ' rRange'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'max'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' _getRRangeForQ'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'min'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Otherwise we\u0027re just incrementing r.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Check if the board point is actually on the board.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'bool'),
      TextSpan(style: codeStyle.baseStyle, text: ' _validateBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' center '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' distanceFromCenter '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' getDistance'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'center'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' distanceFromCenter '),
      TextSpan(style: codeStyle.punctuationStyle, text: '<='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Get the size in pixels of the entire board.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Size'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' size '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' sqrt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerToFlat '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Get the distance between two BoardPoints.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'static'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' getDistance'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' a'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' b'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' a3 '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'cubeCoordinates'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' b3 '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' b'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'cubeCoordinates'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.baseStyle, text: 'a3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' b3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'abs'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'a3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' b3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'abs'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'a3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'z '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' b3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'z'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'abs'),
      TextSpan(style: codeStyle.punctuationStyle, text: '())'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '~/'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Return the q,r BoardPoint for a point in the scene, where the origin is in'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// the center of the board in both coordinate systems. If no BoardPoint at the'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle, text: '// location, return null.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' pointToBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.baseStyle, text: ' point'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' pointCentered '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      point'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dx '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'width '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      point'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dy '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'height '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.baseStyle, text: 'sqrt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' pointCentered'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dx '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '1'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' pointCentered'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dy'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(
          style: codeStyle.baseStyle,
          text: '\u000a              hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          '),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'round'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' pointCentered'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'dy'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'round'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(!'),
      TextSpan(style: codeStyle.baseStyle, text: '_validateBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '))'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' _boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'firstWhere'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Return a scene point for the center of a hexagon given its q,r point.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Point'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointToPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Point'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.keywordStyle, text: 'double'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      sqrt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          sqrt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '3'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a          size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'width '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.numberStyle, text: '1.5'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius '),
      TextSpan(style: codeStyle.punctuationStyle, text: '*'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '+'),
      TextSpan(style: codeStyle.baseStyle, text: ' size'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'height '),
      TextSpan(style: codeStyle.punctuationStyle, text: '/'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '2'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Get Vertices that can be drawn to a Canvas for the given BoardPoint.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Vertices'),
      TextSpan(style: codeStyle.baseStyle, text: ' getVerticesForBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' centerOfHexZeroCenter '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointToPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' positions '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(
          style: codeStyle.baseStyle, text: ' positionsForHexagonAtOrigin'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'map'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.baseStyle, text: 'offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' offset'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'translate'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'centerOfHexZeroCenter'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'x'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' centerOfHexZeroCenter'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'y'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}).'),
      TextSpan(style: codeStyle.baseStyle, text: 'toList'),
      TextSpan(style: codeStyle.punctuationStyle, text: '();'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Vertices'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'VertexMode'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'triangleFan'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      positions'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      colors'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>.'),
      TextSpan(style: codeStyle.baseStyle, text: 'filled'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'positions'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'length'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Return a new board with the given BoardPoint selected.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.baseStyle, text: ' copyWithSelected'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'selected '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoard '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' _boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoard'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Return a new board where boardPoint has the given color.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.baseStyle, text: ' copyWithBoardPointColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'copyWithColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointIndex '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' _boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'indexWhere'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=>'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPointI'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'elementAt'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPointIndex'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'color '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoardPoints '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>.'),
      TextSpan(style: codeStyle.baseStyle, text: 'from'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '_boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    nextBoardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '['),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPointIndex'),
      TextSpan(style: codeStyle.punctuationStyle, text: ']'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' selectedBoardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        boardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' selected '),
      TextSpan(style: codeStyle.punctuationStyle, text: '?'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoardPoint '),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Board'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonRadius'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' hexagonMargin'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      selected'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' selectedBoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextBoardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardIterator'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'extends'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Iterator'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: '_BoardIterator'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'List'),
      TextSpan(style: codeStyle.punctuationStyle, text: '<'),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '>'),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' currentIndex'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' current'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'bool'),
      TextSpan(style: codeStyle.baseStyle, text: ' moveNext'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'currentIndex '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      currentIndex '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'else'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      currentIndex'),
      TextSpan(style: codeStyle.punctuationStyle, text: '++;'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'currentIndex '),
      TextSpan(style: codeStyle.punctuationStyle, text: '>='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'length'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      current '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'false'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a    current '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' boardPoints'),
      TextSpan(style: codeStyle.punctuationStyle, text: '['),
      TextSpan(style: codeStyle.baseStyle, text: 'currentIndex'),
      TextSpan(style: codeStyle.punctuationStyle, text: '];'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'true'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// A range of q/r board coordinate values.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: '@immutable'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_Range'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: '_Range'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'min'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'max'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'min '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'max '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'null'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a        '),
      TextSpan(style: codeStyle.keywordStyle, text: 'assert'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'min '),
      TextSpan(style: codeStyle.punctuationStyle, text: '<='),
      TextSpan(style: codeStyle.baseStyle, text: ' max'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' min'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' max'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// A location on the board in axial coordinates.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// Axial coordinates use two integers, q and r, to locate a hexagon on a grid.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(
          style: codeStyle.commentStyle,
          text:
              '// https://www.redblobgames.com/grids/hexagons/#coordinates-axial'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: '@immutable'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.keywordStyle, text: 'class'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'this'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'color '),
      TextSpan(style: codeStyle.punctuationStyle, text: '='),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'const'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.numberStyle, text: '0'),
      TextSpan(style: codeStyle.baseStyle, text: 'xFFCDCDCD'),
      TextSpan(style: codeStyle.punctuationStyle, text: '),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '});'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'final'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'String'),
      TextSpan(style: codeStyle.baseStyle, text: ' toString'),
      TextSpan(style: codeStyle.punctuationStyle, text: '()'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(
          style: codeStyle.stringStyle,
          text: '\u0027BoardPoint(\u0024q, \u0024r, \u0024color)\u0027'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle, text: '// Only compares by location.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'bool'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'operator'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '==('),
      TextSpan(style: codeStyle.classStyle, text: 'Object'),
      TextSpan(style: codeStyle.baseStyle, text: ' other'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'if'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'other'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'runtimeType '),
      TextSpan(style: codeStyle.punctuationStyle, text: '!='),
      TextSpan(style: codeStyle.baseStyle, text: ' runtimeType'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'false'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' other '),
      TextSpan(style: codeStyle.keywordStyle, text: 'is'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' other'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '&&'),
      TextSpan(style: codeStyle.baseStyle, text: ' other'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'r '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=='),
      TextSpan(style: codeStyle.baseStyle, text: ' r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ';'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: '@override'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.keywordStyle, text: 'int'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' hashCode '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=>'),
      TextSpan(style: codeStyle.baseStyle, text: ' hashValues'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.baseStyle, text: ' copyWithColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.classStyle, text: 'Color'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: ')'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.punctuationStyle, text: '=>'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.classStyle, text: 'BoardPoint'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: 'q'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ','),
      TextSpan(style: codeStyle.baseStyle, text: ' color'),
      TextSpan(style: codeStyle.punctuationStyle, text: ':'),
      TextSpan(style: codeStyle.baseStyle, text: ' nextColor'),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a  '),
      TextSpan(
          style: codeStyle.commentStyle,
          text: '// Convert from q,r axial coords to x,y,z cube coords.'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.classStyle, text: 'Vector3'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.keywordStyle, text: 'get'),
      TextSpan(style: codeStyle.baseStyle, text: ' cubeCoordinates '),
      TextSpan(style: codeStyle.punctuationStyle, text: '{'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.keywordStyle, text: 'return'),
      TextSpan(style: codeStyle.baseStyle, text: ' '),
      TextSpan(style: codeStyle.classStyle, text: 'Vector3'),
      TextSpan(style: codeStyle.punctuationStyle, text: '('),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      q'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'toDouble'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      r'),
      TextSpan(style: codeStyle.punctuationStyle, text: '.'),
      TextSpan(style: codeStyle.baseStyle, text: 'toDouble'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a      '),
      TextSpan(style: codeStyle.punctuationStyle, text: '(-'),
      TextSpan(style: codeStyle.baseStyle, text: 'q '),
      TextSpan(style: codeStyle.punctuationStyle, text: '-'),
      TextSpan(style: codeStyle.baseStyle, text: ' r'),
      TextSpan(style: codeStyle.punctuationStyle, text: ').'),
      TextSpan(style: codeStyle.baseStyle, text: 'toDouble'),
      TextSpan(style: codeStyle.punctuationStyle, text: '(),'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a    '),
      TextSpan(style: codeStyle.punctuationStyle, text: ');'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a  '),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a'),
      TextSpan(style: codeStyle.punctuationStyle, text: '}'),
      TextSpan(style: codeStyle.baseStyle, text: '\u000a\u000a'),
    ]);
  }