code: func createFromMixed(data [][]interface{}, format byte) []*TabulateRow {
  	rows := make([]*TabulateRow, len(data))
  	for index_1, element := range data {
  		normalized := make([]string, len(element))
  		for index, el := range element {
  			switch el.(type) {
  			case int32:
  				quoted := strconv.QuoteRuneToASCII(el.(int32))
  				normalized[index] = quoted[1 : len(quoted)-1]
  			case int:
  				normalized[index] = strconv.Itoa(el.(int))
  			case int64:
  				normalized[index] = strconv.FormatInt(el.(int64), 10)
  			case bool:
  				normalized[index] = strconv.FormatBool(el.(bool))
  			case float64:
  				normalized[index] = strconv.FormatFloat(el.(float64), format, -1, 64)
  			case uint64:
  				normalized[index] = strconv.FormatUint(el.(uint64), 10)
  			case nil:
  				normalized[index] = "nil"
  			default:
  				normalized[index] = fmt.Sprintf("%s", el)
  			}
  		}
  		rows[index_1] = &TabulateRow{Elements: normalized}
  	}
  	return rows
  }
docs: // Create normalized array of rows from mixed data (interface{})