nodes: 0, module; 1, function_definition; 2, function_name:get_html_string; 3, parameters; 4, block; 5, identifier:self; 6, dictionary_splat_pattern; 7, expression_statement; 8, expression_statement; 9, if_statement; 10, return_statement; 11, identifier:kwargs; 12, comment:"""Return string representation of HTML formatted version of table in current state.
  
          Arguments:
  
          start - index of first data row to include in output
          end - index of last data row to include in output PLUS ONE (list slice style)
          fields - names of fields (columns) to include
          header - print a header showing field names (True or False)
          border - print a border around the table (True or False)
          hrules - controls printing of horizontal rules after rows.  Allowed values: ALL, FRAME, HEADER, NONE
          vrules - controls printing of vertical rules between columns.  Allowed values: FRAME, ALL, NONE
          int_format - controls formatting of integer data
          float_format - controls formatting of floating point data
          padding_width - number of spaces on either side of column data (only used if left and right paddings are None)
          left_padding_width - number of spaces on left hand side of column data
          right_padding_width - number of spaces on right hand side of column data
          sortby - name of field to sort rows by
          sort_key - sorting key function, applied to data points before sorting
          attributes - dictionary of name/value pairs to include as HTML attributes in the <table> tag
          xhtml - print <br/> tags if True, <br> tags if false"""; 13, assignment; 14, subscript; 15, block; 16, else_clause; 17, identifier:string; 18, identifier:options; 19, call; 20, identifier:options; 21, string:"format"; 22, expression_statement; 23, block; 24, attribute; 25, argument_list; 26, assignment; 27, expression_statement; 28, identifier:self; 29, identifier:_get_options; 30, identifier:kwargs; 31, identifier:string; 32, call; 33, assignment; 34, attribute; 35, argument_list; 36, identifier:string; 37, call; 38, identifier:self; 39, identifier:_get_formatted_html_string; 40, identifier:options; 41, attribute; 42, argument_list; 43, identifier:self; 44, identifier:_get_simple_html_string; 45, identifier:options
code: def get_html_string(self, **kwargs):
  
          """Return string representation of HTML formatted version of table in current state.
  
          Arguments:
  
          start - index of first data row to include in output
          end - index of last data row to include in output PLUS ONE (list slice style)
          fields - names of fields (columns) to include
          header - print a header showing field names (True or False)
          border - print a border around the table (True or False)
          hrules - controls printing of horizontal rules after rows.  Allowed values: ALL, FRAME, HEADER, NONE
          vrules - controls printing of vertical rules between columns.  Allowed values: FRAME, ALL, NONE
          int_format - controls formatting of integer data
          float_format - controls formatting of floating point data
          padding_width - number of spaces on either side of column data (only used if left and right paddings are None)
          left_padding_width - number of spaces on left hand side of column data
          right_padding_width - number of spaces on right hand side of column data
          sortby - name of field to sort rows by
          sort_key - sorting key function, applied to data points before sorting
          attributes - dictionary of name/value pairs to include as HTML attributes in the <table> tag
          xhtml - print <br/> tags if True, <br> tags if false"""
  
          options = self._get_options(kwargs)
  
          if options["format"]:
              string = self._get_formatted_html_string(options)
          else:
              string = self._get_simple_html_string(options)
  
          return string