
package de.ivu.elect.exchange.datei.csv;

import static java.util.stream.Collectors.toList;

import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

import org.jsefa.csv.annotation.CsvDataType;
import org.jsefa.csv.annotation.CsvField;

@CsvDataType
public class DefaultCsvDTO {

  public static void main(String[] args) {
    String dtoClassSimpleName = DefaultCsvDTO.class.getSimpleName();
    String valueNotMapped = "!DEFAULT-NOT-MAPPED!";
    int fieldCount = 500;

    System.out.println("  private static final String NOT_MAPPED = \"" + valueNotMapped + "\";\n");

    for (int i = 1; i <= fieldCount; i++) {
      System.out.println("  @" + CsvField.class.getSimpleName() + "(pos = " + i + ")");
      System.out.println("  public String value" + i + " = NOT_MAPPED;\n");
    }

    System.out.println("  public " + dtoClassSimpleName + "() {");
    System.out.println("    super();");
    System.out.println("  }\n");

    System.out.println("  public String[] toStringArray() {");
    System.out.println("    List<String> list = toStringList();");
    System.out.println("    return list.toArray(new String[list.size()]);");
    System.out.println("  }\n");

    System.out.println("  public List<String> toStringList() {");
    System.out.print("    List<String> list = Stream.of(");
    for (int i = 1; i <= fieldCount; i++) {
      System.out.print("value" + i + (i == fieldCount ? "" : ", "));
    }
    System.out.println("    ).collect(Collectors.toList());");
    System.out.println("    int anzahlSpaltenBisKeineWerteMehr = list.size();");
    System.out.println("    for (int index = list.size() - 1; index >= 0; index--) {");
    System.out.println("      if (!NOT_MAPPED.equals(list.get(index))) {");
    System.out.println("        anzahlSpaltenBisKeineWerteMehr = index + 1;");
    System.out.println("        break;");
    System.out.println("      }");
    System.out.println("    }");
    System.out.println("    return list.stream() //");
    System.out.println("        .limit(anzahlSpaltenBisKeineWerteMehr) //");
    System.out.println("        .map(value -> {");
    System.out.println("          if (NOT_MAPPED.equals(value)) {");
    System.out.println("            return \"\";");
    System.out.println("          }");
    System.out.println("          return value;");
    System.out.println("        }) //");
    System.out.println("        .collect(toList());");
    System.out.println("  }");
  }

  private static final String NOT_MAPPED = "!DEFAULT-NOT-MAPPED!";

  @CsvField(pos = 1)
  public String value1 = NOT_MAPPED;

  @CsvField(pos = 2)
  public String value2 = NOT_MAPPED;

  @CsvField(pos = 3)
  public String value3 = NOT_MAPPED;

  @CsvField(pos = 4)
  public String value4 = NOT_MAPPED;

  @CsvField(pos = 5)
  public String value5 = NOT_MAPPED;

  @CsvField(pos = 6)
  public String value6 = NOT_MAPPED;

  @CsvField(pos = 7)
  public String value7 = NOT_MAPPED;

  @CsvField(pos = 8)
  public String value8 = NOT_MAPPED;

  @CsvField(pos = 9)
  public String value9 = NOT_MAPPED;

  @CsvField(pos = 10)
  public String value10 = NOT_MAPPED;

  @CsvField(pos = 11)
  public String value11 = NOT_MAPPED;

  @CsvField(pos = 12)
  public String value12 = NOT_MAPPED;

  @CsvField(pos = 13)
  public String value13 = NOT_MAPPED;

  @CsvField(pos = 14)
  public String value14 = NOT_MAPPED;

  @CsvField(pos = 15)
  public String value15 = NOT_MAPPED;

  @CsvField(pos = 16)
  public String value16 = NOT_MAPPED;

  @CsvField(pos = 17)
  public String value17 = NOT_MAPPED;

  @CsvField(pos = 18)
  public String value18 = NOT_MAPPED;

  @CsvField(pos = 19)
  public String value19 = NOT_MAPPED;

  @CsvField(pos = 20)
  public String value20 = NOT_MAPPED;

  @CsvField(pos = 21)
  public String value21 = NOT_MAPPED;

  @CsvField(pos = 22)
  public String value22 = NOT_MAPPED;

  @CsvField(pos = 23)
  public String value23 = NOT_MAPPED;

  @CsvField(pos = 24)
  public String value24 = NOT_MAPPED;

  @CsvField(pos = 25)
  public String value25 = NOT_MAPPED;

  @CsvField(pos = 26)
  public String value26 = NOT_MAPPED;

  @CsvField(pos = 27)
  public String value27 = NOT_MAPPED;

  @CsvField(pos = 28)
  public String value28 = NOT_MAPPED;

  @CsvField(pos = 29)
  public String value29 = NOT_MAPPED;

  @CsvField(pos = 30)
  public String value30 = NOT_MAPPED;

  @CsvField(pos = 31)
  public String value31 = NOT_MAPPED;

  @CsvField(pos = 32)
  public String value32 = NOT_MAPPED;

  @CsvField(pos = 33)
  public String value33 = NOT_MAPPED;

  @CsvField(pos = 34)
  public String value34 = NOT_MAPPED;

  @CsvField(pos = 35)
  public String value35 = NOT_MAPPED;

  @CsvField(pos = 36)
  public String value36 = NOT_MAPPED;

  @CsvField(pos = 37)
  public String value37 = NOT_MAPPED;

  @CsvField(pos = 38)
  public String value38 = NOT_MAPPED;

  @CsvField(pos = 39)
  public String value39 = NOT_MAPPED;

  @CsvField(pos = 40)
  public String value40 = NOT_MAPPED;

  @CsvField(pos = 41)
  public String value41 = NOT_MAPPED;

  @CsvField(pos = 42)
  public String value42 = NOT_MAPPED;

  @CsvField(pos = 43)
  public String value43 = NOT_MAPPED;

  @CsvField(pos = 44)
  public String value44 = NOT_MAPPED;

  @CsvField(pos = 45)
  public String value45 = NOT_MAPPED;

  @CsvField(pos = 46)
  public String value46 = NOT_MAPPED;

  @CsvField(pos = 47)
  public String value47 = NOT_MAPPED;

  @CsvField(pos = 48)
  public String value48 = NOT_MAPPED;

  @CsvField(pos = 49)
  public String value49 = NOT_MAPPED;

  @CsvField(pos = 50)
  public String value50 = NOT_MAPPED;

  @CsvField(pos = 51)
  public String value51 = NOT_MAPPED;

  @CsvField(pos = 52)
  public String value52 = NOT_MAPPED;

  @CsvField(pos = 53)
  public String value53 = NOT_MAPPED;

  @CsvField(pos = 54)
  public String value54 = NOT_MAPPED;

  @CsvField(pos = 55)
  public String value55 = NOT_MAPPED;

  @CsvField(pos = 56)
  public String value56 = NOT_MAPPED;

  @CsvField(pos = 57)
  public String value57 = NOT_MAPPED;

  @CsvField(pos = 58)
  public String value58 = NOT_MAPPED;

  @CsvField(pos = 59)
  public String value59 = NOT_MAPPED;

  @CsvField(pos = 60)
  public String value60 = NOT_MAPPED;

  @CsvField(pos = 61)
  public String value61 = NOT_MAPPED;

  @CsvField(pos = 62)
  public String value62 = NOT_MAPPED;

  @CsvField(pos = 63)
  public String value63 = NOT_MAPPED;

  @CsvField(pos = 64)
  public String value64 = NOT_MAPPED;

  @CsvField(pos = 65)
  public String value65 = NOT_MAPPED;

  @CsvField(pos = 66)
  public String value66 = NOT_MAPPED;

  @CsvField(pos = 67)
  public String value67 = NOT_MAPPED;

  @CsvField(pos = 68)
  public String value68 = NOT_MAPPED;

  @CsvField(pos = 69)
  public String value69 = NOT_MAPPED;

  @CsvField(pos = 70)
  public String value70 = NOT_MAPPED;

  @CsvField(pos = 71)
  public String value71 = NOT_MAPPED;

  @CsvField(pos = 72)
  public String value72 = NOT_MAPPED;

  @CsvField(pos = 73)
  public String value73 = NOT_MAPPED;

  @CsvField(pos = 74)
  public String value74 = NOT_MAPPED;

  @CsvField(pos = 75)
  public String value75 = NOT_MAPPED;

  @CsvField(pos = 76)
  public String value76 = NOT_MAPPED;

  @CsvField(pos = 77)
  public String value77 = NOT_MAPPED;

  @CsvField(pos = 78)
  public String value78 = NOT_MAPPED;

  @CsvField(pos = 79)
  public String value79 = NOT_MAPPED;

  @CsvField(pos = 80)
  public String value80 = NOT_MAPPED;

  @CsvField(pos = 81)
  public String value81 = NOT_MAPPED;

  @CsvField(pos = 82)
  public String value82 = NOT_MAPPED;

  @CsvField(pos = 83)
  public String value83 = NOT_MAPPED;

  @CsvField(pos = 84)
  public String value84 = NOT_MAPPED;

  @CsvField(pos = 85)
  public String value85 = NOT_MAPPED;

  @CsvField(pos = 86)
  public String value86 = NOT_MAPPED;

  @CsvField(pos = 87)
  public String value87 = NOT_MAPPED;

  @CsvField(pos = 88)
  public String value88 = NOT_MAPPED;

  @CsvField(pos = 89)
  public String value89 = NOT_MAPPED;

  @CsvField(pos = 90)
  public String value90 = NOT_MAPPED;

  @CsvField(pos = 91)
  public String value91 = NOT_MAPPED;

  @CsvField(pos = 92)
  public String value92 = NOT_MAPPED;

  @CsvField(pos = 93)
  public String value93 = NOT_MAPPED;

  @CsvField(pos = 94)
  public String value94 = NOT_MAPPED;

  @CsvField(pos = 95)
  public String value95 = NOT_MAPPED;

  @CsvField(pos = 96)
  public String value96 = NOT_MAPPED;

  @CsvField(pos = 97)
  public String value97 = NOT_MAPPED;

  @CsvField(pos = 98)
  public String value98 = NOT_MAPPED;

  @CsvField(pos = 99)
  public String value99 = NOT_MAPPED;

  @CsvField(pos = 100)
  public String value100 = NOT_MAPPED;

  @CsvField(pos = 101)
  public String value101 = NOT_MAPPED;

  @CsvField(pos = 102)
  public String value102 = NOT_MAPPED;

  @CsvField(pos = 103)
  public String value103 = NOT_MAPPED;

  @CsvField(pos = 104)
  public String value104 = NOT_MAPPED;

  @CsvField(pos = 105)
  public String value105 = NOT_MAPPED;

  @CsvField(pos = 106)
  public String value106 = NOT_MAPPED;

  @CsvField(pos = 107)
  public String value107 = NOT_MAPPED;

  @CsvField(pos = 108)
  public String value108 = NOT_MAPPED;

  @CsvField(pos = 109)
  public String value109 = NOT_MAPPED;

  @CsvField(pos = 110)
  public String value110 = NOT_MAPPED;

  @CsvField(pos = 111)
  public String value111 = NOT_MAPPED;

  @CsvField(pos = 112)
  public String value112 = NOT_MAPPED;

  @CsvField(pos = 113)
  public String value113 = NOT_MAPPED;

  @CsvField(pos = 114)
  public String value114 = NOT_MAPPED;

  @CsvField(pos = 115)
  public String value115 = NOT_MAPPED;

  @CsvField(pos = 116)
  public String value116 = NOT_MAPPED;

  @CsvField(pos = 117)
  public String value117 = NOT_MAPPED;

  @CsvField(pos = 118)
  public String value118 = NOT_MAPPED;

  @CsvField(pos = 119)
  public String value119 = NOT_MAPPED;

  @CsvField(pos = 120)
  public String value120 = NOT_MAPPED;

  @CsvField(pos = 121)
  public String value121 = NOT_MAPPED;

  @CsvField(pos = 122)
  public String value122 = NOT_MAPPED;

  @CsvField(pos = 123)
  public String value123 = NOT_MAPPED;

  @CsvField(pos = 124)
  public String value124 = NOT_MAPPED;

  @CsvField(pos = 125)
  public String value125 = NOT_MAPPED;

  @CsvField(pos = 126)
  public String value126 = NOT_MAPPED;

  @CsvField(pos = 127)
  public String value127 = NOT_MAPPED;

  @CsvField(pos = 128)
  public String value128 = NOT_MAPPED;

  @CsvField(pos = 129)
  public String value129 = NOT_MAPPED;

  @CsvField(pos = 130)
  public String value130 = NOT_MAPPED;

  @CsvField(pos = 131)
  public String value131 = NOT_MAPPED;

  @CsvField(pos = 132)
  public String value132 = NOT_MAPPED;

  @CsvField(pos = 133)
  public String value133 = NOT_MAPPED;

  @CsvField(pos = 134)
  public String value134 = NOT_MAPPED;

  @CsvField(pos = 135)
  public String value135 = NOT_MAPPED;

  @CsvField(pos = 136)
  public String value136 = NOT_MAPPED;

  @CsvField(pos = 137)
  public String value137 = NOT_MAPPED;

  @CsvField(pos = 138)
  public String value138 = NOT_MAPPED;

  @CsvField(pos = 139)
  public String value139 = NOT_MAPPED;

  @CsvField(pos = 140)
  public String value140 = NOT_MAPPED;

  @CsvField(pos = 141)
  public String value141 = NOT_MAPPED;

  @CsvField(pos = 142)
  public String value142 = NOT_MAPPED;

  @CsvField(pos = 143)
  public String value143 = NOT_MAPPED;

  @CsvField(pos = 144)
  public String value144 = NOT_MAPPED;

  @CsvField(pos = 145)
  public String value145 = NOT_MAPPED;

  @CsvField(pos = 146)
  public String value146 = NOT_MAPPED;

  @CsvField(pos = 147)
  public String value147 = NOT_MAPPED;

  @CsvField(pos = 148)
  public String value148 = NOT_MAPPED;

  @CsvField(pos = 149)
  public String value149 = NOT_MAPPED;

  @CsvField(pos = 150)
  public String value150 = NOT_MAPPED;

  @CsvField(pos = 151)
  public String value151 = NOT_MAPPED;

  @CsvField(pos = 152)
  public String value152 = NOT_MAPPED;

  @CsvField(pos = 153)
  public String value153 = NOT_MAPPED;

  @CsvField(pos = 154)
  public String value154 = NOT_MAPPED;

  @CsvField(pos = 155)
  public String value155 = NOT_MAPPED;

  @CsvField(pos = 156)
  public String value156 = NOT_MAPPED;

  @CsvField(pos = 157)
  public String value157 = NOT_MAPPED;

  @CsvField(pos = 158)
  public String value158 = NOT_MAPPED;

  @CsvField(pos = 159)
  public String value159 = NOT_MAPPED;

  @CsvField(pos = 160)
  public String value160 = NOT_MAPPED;

  @CsvField(pos = 161)
  public String value161 = NOT_MAPPED;

  @CsvField(pos = 162)
  public String value162 = NOT_MAPPED;

  @CsvField(pos = 163)
  public String value163 = NOT_MAPPED;

  @CsvField(pos = 164)
  public String value164 = NOT_MAPPED;

  @CsvField(pos = 165)
  public String value165 = NOT_MAPPED;

  @CsvField(pos = 166)
  public String value166 = NOT_MAPPED;

  @CsvField(pos = 167)
  public String value167 = NOT_MAPPED;

  @CsvField(pos = 168)
  public String value168 = NOT_MAPPED;

  @CsvField(pos = 169)
  public String value169 = NOT_MAPPED;

  @CsvField(pos = 170)
  public String value170 = NOT_MAPPED;

  @CsvField(pos = 171)
  public String value171 = NOT_MAPPED;

  @CsvField(pos = 172)
  public String value172 = NOT_MAPPED;

  @CsvField(pos = 173)
  public String value173 = NOT_MAPPED;

  @CsvField(pos = 174)
  public String value174 = NOT_MAPPED;

  @CsvField(pos = 175)
  public String value175 = NOT_MAPPED;

  @CsvField(pos = 176)
  public String value176 = NOT_MAPPED;

  @CsvField(pos = 177)
  public String value177 = NOT_MAPPED;

  @CsvField(pos = 178)
  public String value178 = NOT_MAPPED;

  @CsvField(pos = 179)
  public String value179 = NOT_MAPPED;

  @CsvField(pos = 180)
  public String value180 = NOT_MAPPED;

  @CsvField(pos = 181)
  public String value181 = NOT_MAPPED;

  @CsvField(pos = 182)
  public String value182 = NOT_MAPPED;

  @CsvField(pos = 183)
  public String value183 = NOT_MAPPED;

  @CsvField(pos = 184)
  public String value184 = NOT_MAPPED;

  @CsvField(pos = 185)
  public String value185 = NOT_MAPPED;

  @CsvField(pos = 186)
  public String value186 = NOT_MAPPED;

  @CsvField(pos = 187)
  public String value187 = NOT_MAPPED;

  @CsvField(pos = 188)
  public String value188 = NOT_MAPPED;

  @CsvField(pos = 189)
  public String value189 = NOT_MAPPED;

  @CsvField(pos = 190)
  public String value190 = NOT_MAPPED;

  @CsvField(pos = 191)
  public String value191 = NOT_MAPPED;

  @CsvField(pos = 192)
  public String value192 = NOT_MAPPED;

  @CsvField(pos = 193)
  public String value193 = NOT_MAPPED;

  @CsvField(pos = 194)
  public String value194 = NOT_MAPPED;

  @CsvField(pos = 195)
  public String value195 = NOT_MAPPED;

  @CsvField(pos = 196)
  public String value196 = NOT_MAPPED;

  @CsvField(pos = 197)
  public String value197 = NOT_MAPPED;

  @CsvField(pos = 198)
  public String value198 = NOT_MAPPED;

  @CsvField(pos = 199)
  public String value199 = NOT_MAPPED;

  @CsvField(pos = 200)
  public String value200 = NOT_MAPPED;

  @CsvField(pos = 201)
  public String value201 = NOT_MAPPED;

  @CsvField(pos = 202)
  public String value202 = NOT_MAPPED;

  @CsvField(pos = 203)
  public String value203 = NOT_MAPPED;

  @CsvField(pos = 204)
  public String value204 = NOT_MAPPED;

  @CsvField(pos = 205)
  public String value205 = NOT_MAPPED;

  @CsvField(pos = 206)
  public String value206 = NOT_MAPPED;

  @CsvField(pos = 207)
  public String value207 = NOT_MAPPED;

  @CsvField(pos = 208)
  public String value208 = NOT_MAPPED;

  @CsvField(pos = 209)
  public String value209 = NOT_MAPPED;

  @CsvField(pos = 210)
  public String value210 = NOT_MAPPED;

  @CsvField(pos = 211)
  public String value211 = NOT_MAPPED;

  @CsvField(pos = 212)
  public String value212 = NOT_MAPPED;

  @CsvField(pos = 213)
  public String value213 = NOT_MAPPED;

  @CsvField(pos = 214)
  public String value214 = NOT_MAPPED;

  @CsvField(pos = 215)
  public String value215 = NOT_MAPPED;

  @CsvField(pos = 216)
  public String value216 = NOT_MAPPED;

  @CsvField(pos = 217)
  public String value217 = NOT_MAPPED;

  @CsvField(pos = 218)
  public String value218 = NOT_MAPPED;

  @CsvField(pos = 219)
  public String value219 = NOT_MAPPED;

  @CsvField(pos = 220)
  public String value220 = NOT_MAPPED;

  @CsvField(pos = 221)
  public String value221 = NOT_MAPPED;

  @CsvField(pos = 222)
  public String value222 = NOT_MAPPED;

  @CsvField(pos = 223)
  public String value223 = NOT_MAPPED;

  @CsvField(pos = 224)
  public String value224 = NOT_MAPPED;

  @CsvField(pos = 225)
  public String value225 = NOT_MAPPED;

  @CsvField(pos = 226)
  public String value226 = NOT_MAPPED;

  @CsvField(pos = 227)
  public String value227 = NOT_MAPPED;

  @CsvField(pos = 228)
  public String value228 = NOT_MAPPED;

  @CsvField(pos = 229)
  public String value229 = NOT_MAPPED;

  @CsvField(pos = 230)
  public String value230 = NOT_MAPPED;

  @CsvField(pos = 231)
  public String value231 = NOT_MAPPED;

  @CsvField(pos = 232)
  public String value232 = NOT_MAPPED;

  @CsvField(pos = 233)
  public String value233 = NOT_MAPPED;

  @CsvField(pos = 234)
  public String value234 = NOT_MAPPED;

  @CsvField(pos = 235)
  public String value235 = NOT_MAPPED;

  @CsvField(pos = 236)
  public String value236 = NOT_MAPPED;

  @CsvField(pos = 237)
  public String value237 = NOT_MAPPED;

  @CsvField(pos = 238)
  public String value238 = NOT_MAPPED;

  @CsvField(pos = 239)
  public String value239 = NOT_MAPPED;

  @CsvField(pos = 240)
  public String value240 = NOT_MAPPED;

  @CsvField(pos = 241)
  public String value241 = NOT_MAPPED;

  @CsvField(pos = 242)
  public String value242 = NOT_MAPPED;

  @CsvField(pos = 243)
  public String value243 = NOT_MAPPED;

  @CsvField(pos = 244)
  public String value244 = NOT_MAPPED;

  @CsvField(pos = 245)
  public String value245 = NOT_MAPPED;

  @CsvField(pos = 246)
  public String value246 = NOT_MAPPED;

  @CsvField(pos = 247)
  public String value247 = NOT_MAPPED;

  @CsvField(pos = 248)
  public String value248 = NOT_MAPPED;

  @CsvField(pos = 249)
  public String value249 = NOT_MAPPED;

  @CsvField(pos = 250)
  public String value250 = NOT_MAPPED;

  @CsvField(pos = 251)
  public String value251 = NOT_MAPPED;

  @CsvField(pos = 252)
  public String value252 = NOT_MAPPED;

  @CsvField(pos = 253)
  public String value253 = NOT_MAPPED;

  @CsvField(pos = 254)
  public String value254 = NOT_MAPPED;

  @CsvField(pos = 255)
  public String value255 = NOT_MAPPED;

  @CsvField(pos = 256)
  public String value256 = NOT_MAPPED;

  @CsvField(pos = 257)
  public String value257 = NOT_MAPPED;

  @CsvField(pos = 258)
  public String value258 = NOT_MAPPED;

  @CsvField(pos = 259)
  public String value259 = NOT_MAPPED;

  @CsvField(pos = 260)
  public String value260 = NOT_MAPPED;

  @CsvField(pos = 261)
  public String value261 = NOT_MAPPED;

  @CsvField(pos = 262)
  public String value262 = NOT_MAPPED;

  @CsvField(pos = 263)
  public String value263 = NOT_MAPPED;

  @CsvField(pos = 264)
  public String value264 = NOT_MAPPED;

  @CsvField(pos = 265)
  public String value265 = NOT_MAPPED;

  @CsvField(pos = 266)
  public String value266 = NOT_MAPPED;

  @CsvField(pos = 267)
  public String value267 = NOT_MAPPED;

  @CsvField(pos = 268)
  public String value268 = NOT_MAPPED;

  @CsvField(pos = 269)
  public String value269 = NOT_MAPPED;

  @CsvField(pos = 270)
  public String value270 = NOT_MAPPED;

  @CsvField(pos = 271)
  public String value271 = NOT_MAPPED;

  @CsvField(pos = 272)
  public String value272 = NOT_MAPPED;

  @CsvField(pos = 273)
  public String value273 = NOT_MAPPED;

  @CsvField(pos = 274)
  public String value274 = NOT_MAPPED;

  @CsvField(pos = 275)
  public String value275 = NOT_MAPPED;

  @CsvField(pos = 276)
  public String value276 = NOT_MAPPED;

  @CsvField(pos = 277)
  public String value277 = NOT_MAPPED;

  @CsvField(pos = 278)
  public String value278 = NOT_MAPPED;

  @CsvField(pos = 279)
  public String value279 = NOT_MAPPED;

  @CsvField(pos = 280)
  public String value280 = NOT_MAPPED;

  @CsvField(pos = 281)
  public String value281 = NOT_MAPPED;

  @CsvField(pos = 282)
  public String value282 = NOT_MAPPED;

  @CsvField(pos = 283)
  public String value283 = NOT_MAPPED;

  @CsvField(pos = 284)
  public String value284 = NOT_MAPPED;

  @CsvField(pos = 285)
  public String value285 = NOT_MAPPED;

  @CsvField(pos = 286)
  public String value286 = NOT_MAPPED;

  @CsvField(pos = 287)
  public String value287 = NOT_MAPPED;

  @CsvField(pos = 288)
  public String value288 = NOT_MAPPED;

  @CsvField(pos = 289)
  public String value289 = NOT_MAPPED;

  @CsvField(pos = 290)
  public String value290 = NOT_MAPPED;

  @CsvField(pos = 291)
  public String value291 = NOT_MAPPED;

  @CsvField(pos = 292)
  public String value292 = NOT_MAPPED;

  @CsvField(pos = 293)
  public String value293 = NOT_MAPPED;

  @CsvField(pos = 294)
  public String value294 = NOT_MAPPED;

  @CsvField(pos = 295)
  public String value295 = NOT_MAPPED;

  @CsvField(pos = 296)
  public String value296 = NOT_MAPPED;

  @CsvField(pos = 297)
  public String value297 = NOT_MAPPED;

  @CsvField(pos = 298)
  public String value298 = NOT_MAPPED;

  @CsvField(pos = 299)
  public String value299 = NOT_MAPPED;

  @CsvField(pos = 300)
  public String value300 = NOT_MAPPED;

  @CsvField(pos = 301)
  public String value301 = NOT_MAPPED;

  @CsvField(pos = 302)
  public String value302 = NOT_MAPPED;

  @CsvField(pos = 303)
  public String value303 = NOT_MAPPED;

  @CsvField(pos = 304)
  public String value304 = NOT_MAPPED;

  @CsvField(pos = 305)
  public String value305 = NOT_MAPPED;

  @CsvField(pos = 306)
  public String value306 = NOT_MAPPED;

  @CsvField(pos = 307)
  public String value307 = NOT_MAPPED;

  @CsvField(pos = 308)
  public String value308 = NOT_MAPPED;

  @CsvField(pos = 309)
  public String value309 = NOT_MAPPED;

  @CsvField(pos = 310)
  public String value310 = NOT_MAPPED;

  @CsvField(pos = 311)
  public String value311 = NOT_MAPPED;

  @CsvField(pos = 312)
  public String value312 = NOT_MAPPED;

  @CsvField(pos = 313)
  public String value313 = NOT_MAPPED;

  @CsvField(pos = 314)
  public String value314 = NOT_MAPPED;

  @CsvField(pos = 315)
  public String value315 = NOT_MAPPED;

  @CsvField(pos = 316)
  public String value316 = NOT_MAPPED;

  @CsvField(pos = 317)
  public String value317 = NOT_MAPPED;

  @CsvField(pos = 318)
  public String value318 = NOT_MAPPED;

  @CsvField(pos = 319)
  public String value319 = NOT_MAPPED;

  @CsvField(pos = 320)
  public String value320 = NOT_MAPPED;

  @CsvField(pos = 321)
  public String value321 = NOT_MAPPED;

  @CsvField(pos = 322)
  public String value322 = NOT_MAPPED;

  @CsvField(pos = 323)
  public String value323 = NOT_MAPPED;

  @CsvField(pos = 324)
  public String value324 = NOT_MAPPED;

  @CsvField(pos = 325)
  public String value325 = NOT_MAPPED;

  @CsvField(pos = 326)
  public String value326 = NOT_MAPPED;

  @CsvField(pos = 327)
  public String value327 = NOT_MAPPED;

  @CsvField(pos = 328)
  public String value328 = NOT_MAPPED;

  @CsvField(pos = 329)
  public String value329 = NOT_MAPPED;

  @CsvField(pos = 330)
  public String value330 = NOT_MAPPED;

  @CsvField(pos = 331)
  public String value331 = NOT_MAPPED;

  @CsvField(pos = 332)
  public String value332 = NOT_MAPPED;

  @CsvField(pos = 333)
  public String value333 = NOT_MAPPED;

  @CsvField(pos = 334)
  public String value334 = NOT_MAPPED;

  @CsvField(pos = 335)
  public String value335 = NOT_MAPPED;

  @CsvField(pos = 336)
  public String value336 = NOT_MAPPED;

  @CsvField(pos = 337)
  public String value337 = NOT_MAPPED;

  @CsvField(pos = 338)
  public String value338 = NOT_MAPPED;

  @CsvField(pos = 339)
  public String value339 = NOT_MAPPED;

  @CsvField(pos = 340)
  public String value340 = NOT_MAPPED;

  @CsvField(pos = 341)
  public String value341 = NOT_MAPPED;

  @CsvField(pos = 342)
  public String value342 = NOT_MAPPED;

  @CsvField(pos = 343)
  public String value343 = NOT_MAPPED;

  @CsvField(pos = 344)
  public String value344 = NOT_MAPPED;

  @CsvField(pos = 345)
  public String value345 = NOT_MAPPED;

  @CsvField(pos = 346)
  public String value346 = NOT_MAPPED;

  @CsvField(pos = 347)
  public String value347 = NOT_MAPPED;

  @CsvField(pos = 348)
  public String value348 = NOT_MAPPED;

  @CsvField(pos = 349)
  public String value349 = NOT_MAPPED;

  @CsvField(pos = 350)
  public String value350 = NOT_MAPPED;

  @CsvField(pos = 351)
  public String value351 = NOT_MAPPED;

  @CsvField(pos = 352)
  public String value352 = NOT_MAPPED;

  @CsvField(pos = 353)
  public String value353 = NOT_MAPPED;

  @CsvField(pos = 354)
  public String value354 = NOT_MAPPED;

  @CsvField(pos = 355)
  public String value355 = NOT_MAPPED;

  @CsvField(pos = 356)
  public String value356 = NOT_MAPPED;

  @CsvField(pos = 357)
  public String value357 = NOT_MAPPED;

  @CsvField(pos = 358)
  public String value358 = NOT_MAPPED;

  @CsvField(pos = 359)
  public String value359 = NOT_MAPPED;

  @CsvField(pos = 360)
  public String value360 = NOT_MAPPED;

  @CsvField(pos = 361)
  public String value361 = NOT_MAPPED;

  @CsvField(pos = 362)
  public String value362 = NOT_MAPPED;

  @CsvField(pos = 363)
  public String value363 = NOT_MAPPED;

  @CsvField(pos = 364)
  public String value364 = NOT_MAPPED;

  @CsvField(pos = 365)
  public String value365 = NOT_MAPPED;

  @CsvField(pos = 366)
  public String value366 = NOT_MAPPED;

  @CsvField(pos = 367)
  public String value367 = NOT_MAPPED;

  @CsvField(pos = 368)
  public String value368 = NOT_MAPPED;

  @CsvField(pos = 369)
  public String value369 = NOT_MAPPED;

  @CsvField(pos = 370)
  public String value370 = NOT_MAPPED;

  @CsvField(pos = 371)
  public String value371 = NOT_MAPPED;

  @CsvField(pos = 372)
  public String value372 = NOT_MAPPED;

  @CsvField(pos = 373)
  public String value373 = NOT_MAPPED;

  @CsvField(pos = 374)
  public String value374 = NOT_MAPPED;

  @CsvField(pos = 375)
  public String value375 = NOT_MAPPED;

  @CsvField(pos = 376)
  public String value376 = NOT_MAPPED;

  @CsvField(pos = 377)
  public String value377 = NOT_MAPPED;

  @CsvField(pos = 378)
  public String value378 = NOT_MAPPED;

  @CsvField(pos = 379)
  public String value379 = NOT_MAPPED;

  @CsvField(pos = 380)
  public String value380 = NOT_MAPPED;

  @CsvField(pos = 381)
  public String value381 = NOT_MAPPED;

  @CsvField(pos = 382)
  public String value382 = NOT_MAPPED;

  @CsvField(pos = 383)
  public String value383 = NOT_MAPPED;

  @CsvField(pos = 384)
  public String value384 = NOT_MAPPED;

  @CsvField(pos = 385)
  public String value385 = NOT_MAPPED;

  @CsvField(pos = 386)
  public String value386 = NOT_MAPPED;

  @CsvField(pos = 387)
  public String value387 = NOT_MAPPED;

  @CsvField(pos = 388)
  public String value388 = NOT_MAPPED;

  @CsvField(pos = 389)
  public String value389 = NOT_MAPPED;

  @CsvField(pos = 390)
  public String value390 = NOT_MAPPED;

  @CsvField(pos = 391)
  public String value391 = NOT_MAPPED;

  @CsvField(pos = 392)
  public String value392 = NOT_MAPPED;

  @CsvField(pos = 393)
  public String value393 = NOT_MAPPED;

  @CsvField(pos = 394)
  public String value394 = NOT_MAPPED;

  @CsvField(pos = 395)
  public String value395 = NOT_MAPPED;

  @CsvField(pos = 396)
  public String value396 = NOT_MAPPED;

  @CsvField(pos = 397)
  public String value397 = NOT_MAPPED;

  @CsvField(pos = 398)
  public String value398 = NOT_MAPPED;

  @CsvField(pos = 399)
  public String value399 = NOT_MAPPED;

  @CsvField(pos = 400)
  public String value400 = NOT_MAPPED;

  @CsvField(pos = 401)
  public String value401 = NOT_MAPPED;

  @CsvField(pos = 402)
  public String value402 = NOT_MAPPED;

  @CsvField(pos = 403)
  public String value403 = NOT_MAPPED;

  @CsvField(pos = 404)
  public String value404 = NOT_MAPPED;

  @CsvField(pos = 405)
  public String value405 = NOT_MAPPED;

  @CsvField(pos = 406)
  public String value406 = NOT_MAPPED;

  @CsvField(pos = 407)
  public String value407 = NOT_MAPPED;

  @CsvField(pos = 408)
  public String value408 = NOT_MAPPED;

  @CsvField(pos = 409)
  public String value409 = NOT_MAPPED;

  @CsvField(pos = 410)
  public String value410 = NOT_MAPPED;

  @CsvField(pos = 411)
  public String value411 = NOT_MAPPED;

  @CsvField(pos = 412)
  public String value412 = NOT_MAPPED;

  @CsvField(pos = 413)
  public String value413 = NOT_MAPPED;

  @CsvField(pos = 414)
  public String value414 = NOT_MAPPED;

  @CsvField(pos = 415)
  public String value415 = NOT_MAPPED;

  @CsvField(pos = 416)
  public String value416 = NOT_MAPPED;

  @CsvField(pos = 417)
  public String value417 = NOT_MAPPED;

  @CsvField(pos = 418)
  public String value418 = NOT_MAPPED;

  @CsvField(pos = 419)
  public String value419 = NOT_MAPPED;

  @CsvField(pos = 420)
  public String value420 = NOT_MAPPED;

  @CsvField(pos = 421)
  public String value421 = NOT_MAPPED;

  @CsvField(pos = 422)
  public String value422 = NOT_MAPPED;

  @CsvField(pos = 423)
  public String value423 = NOT_MAPPED;

  @CsvField(pos = 424)
  public String value424 = NOT_MAPPED;

  @CsvField(pos = 425)
  public String value425 = NOT_MAPPED;

  @CsvField(pos = 426)
  public String value426 = NOT_MAPPED;

  @CsvField(pos = 427)
  public String value427 = NOT_MAPPED;

  @CsvField(pos = 428)
  public String value428 = NOT_MAPPED;

  @CsvField(pos = 429)
  public String value429 = NOT_MAPPED;

  @CsvField(pos = 430)
  public String value430 = NOT_MAPPED;

  @CsvField(pos = 431)
  public String value431 = NOT_MAPPED;

  @CsvField(pos = 432)
  public String value432 = NOT_MAPPED;

  @CsvField(pos = 433)
  public String value433 = NOT_MAPPED;

  @CsvField(pos = 434)
  public String value434 = NOT_MAPPED;

  @CsvField(pos = 435)
  public String value435 = NOT_MAPPED;

  @CsvField(pos = 436)
  public String value436 = NOT_MAPPED;

  @CsvField(pos = 437)
  public String value437 = NOT_MAPPED;

  @CsvField(pos = 438)
  public String value438 = NOT_MAPPED;

  @CsvField(pos = 439)
  public String value439 = NOT_MAPPED;

  @CsvField(pos = 440)
  public String value440 = NOT_MAPPED;

  @CsvField(pos = 441)
  public String value441 = NOT_MAPPED;

  @CsvField(pos = 442)
  public String value442 = NOT_MAPPED;

  @CsvField(pos = 443)
  public String value443 = NOT_MAPPED;

  @CsvField(pos = 444)
  public String value444 = NOT_MAPPED;

  @CsvField(pos = 445)
  public String value445 = NOT_MAPPED;

  @CsvField(pos = 446)
  public String value446 = NOT_MAPPED;

  @CsvField(pos = 447)
  public String value447 = NOT_MAPPED;

  @CsvField(pos = 448)
  public String value448 = NOT_MAPPED;

  @CsvField(pos = 449)
  public String value449 = NOT_MAPPED;

  @CsvField(pos = 450)
  public String value450 = NOT_MAPPED;

  @CsvField(pos = 451)
  public String value451 = NOT_MAPPED;

  @CsvField(pos = 452)
  public String value452 = NOT_MAPPED;

  @CsvField(pos = 453)
  public String value453 = NOT_MAPPED;

  @CsvField(pos = 454)
  public String value454 = NOT_MAPPED;

  @CsvField(pos = 455)
  public String value455 = NOT_MAPPED;

  @CsvField(pos = 456)
  public String value456 = NOT_MAPPED;

  @CsvField(pos = 457)
  public String value457 = NOT_MAPPED;

  @CsvField(pos = 458)
  public String value458 = NOT_MAPPED;

  @CsvField(pos = 459)
  public String value459 = NOT_MAPPED;

  @CsvField(pos = 460)
  public String value460 = NOT_MAPPED;

  @CsvField(pos = 461)
  public String value461 = NOT_MAPPED;

  @CsvField(pos = 462)
  public String value462 = NOT_MAPPED;

  @CsvField(pos = 463)
  public String value463 = NOT_MAPPED;

  @CsvField(pos = 464)
  public String value464 = NOT_MAPPED;

  @CsvField(pos = 465)
  public String value465 = NOT_MAPPED;

  @CsvField(pos = 466)
  public String value466 = NOT_MAPPED;

  @CsvField(pos = 467)
  public String value467 = NOT_MAPPED;

  @CsvField(pos = 468)
  public String value468 = NOT_MAPPED;

  @CsvField(pos = 469)
  public String value469 = NOT_MAPPED;

  @CsvField(pos = 470)
  public String value470 = NOT_MAPPED;

  @CsvField(pos = 471)
  public String value471 = NOT_MAPPED;

  @CsvField(pos = 472)
  public String value472 = NOT_MAPPED;

  @CsvField(pos = 473)
  public String value473 = NOT_MAPPED;

  @CsvField(pos = 474)
  public String value474 = NOT_MAPPED;

  @CsvField(pos = 475)
  public String value475 = NOT_MAPPED;

  @CsvField(pos = 476)
  public String value476 = NOT_MAPPED;

  @CsvField(pos = 477)
  public String value477 = NOT_MAPPED;

  @CsvField(pos = 478)
  public String value478 = NOT_MAPPED;

  @CsvField(pos = 479)
  public String value479 = NOT_MAPPED;

  @CsvField(pos = 480)
  public String value480 = NOT_MAPPED;

  @CsvField(pos = 481)
  public String value481 = NOT_MAPPED;

  @CsvField(pos = 482)
  public String value482 = NOT_MAPPED;

  @CsvField(pos = 483)
  public String value483 = NOT_MAPPED;

  @CsvField(pos = 484)
  public String value484 = NOT_MAPPED;

  @CsvField(pos = 485)
  public String value485 = NOT_MAPPED;

  @CsvField(pos = 486)
  public String value486 = NOT_MAPPED;

  @CsvField(pos = 487)
  public String value487 = NOT_MAPPED;

  @CsvField(pos = 488)
  public String value488 = NOT_MAPPED;

  @CsvField(pos = 489)
  public String value489 = NOT_MAPPED;

  @CsvField(pos = 490)
  public String value490 = NOT_MAPPED;

  @CsvField(pos = 491)
  public String value491 = NOT_MAPPED;

  @CsvField(pos = 492)
  public String value492 = NOT_MAPPED;

  @CsvField(pos = 493)
  public String value493 = NOT_MAPPED;

  @CsvField(pos = 494)
  public String value494 = NOT_MAPPED;

  @CsvField(pos = 495)
  public String value495 = NOT_MAPPED;

  @CsvField(pos = 496)
  public String value496 = NOT_MAPPED;

  @CsvField(pos = 497)
  public String value497 = NOT_MAPPED;

  @CsvField(pos = 498)
  public String value498 = NOT_MAPPED;

  @CsvField(pos = 499)
  public String value499 = NOT_MAPPED;

  @CsvField(pos = 500)
  public String value500 = NOT_MAPPED;

  public DefaultCsvDTO() {
    super();
  }

  public String[] toStringArray() {
    List<String> list = toStringList();
    return list.toArray(new String[list.size()]);
  }

  public List<String> toStringList() {
    List<String> list = Stream.of(value1, value2, value3, value4, value5, value6, value7, value8, value9, value10, value11, value12, value13, value14, value15, value16, value17, value18, value19,
        value20, value21, value22, value23, value24, value25, value26, value27, value28, value29, value30, value31, value32, value33, value34, value35, value36, value37, value38, value39, value40,
        value41, value42, value43, value44, value45, value46, value47, value48, value49, value50, value51, value52, value53, value54, value55, value56, value57, value58, value59, value60, value61,
        value62, value63, value64, value65, value66, value67, value68, value69, value70, value71, value72, value73, value74, value75, value76, value77, value78, value79, value80, value81, value82,
        value83, value84, value85, value86, value87, value88, value89, value90, value91, value92, value93, value94, value95, value96, value97, value98, value99, value100, value101, value102, value103,
        value104, value105, value106, value107, value108, value109, value110, value111, value112, value113, value114, value115, value116, value117, value118, value119, value120, value121, value122,
        value123, value124, value125, value126, value127, value128, value129, value130, value131, value132, value133, value134, value135, value136, value137, value138, value139, value140, value141,
        value142, value143, value144, value145, value146, value147, value148, value149, value150, value151, value152, value153, value154, value155, value156, value157, value158, value159, value160,
        value161, value162, value163, value164, value165, value166, value167, value168, value169, value170, value171, value172, value173, value174, value175, value176, value177, value178, value179,
        value180, value181, value182, value183, value184, value185, value186, value187, value188, value189, value190, value191, value192, value193, value194, value195, value196, value197, value198,
        value199, value200, value201, value202, value203, value204, value205, value206, value207, value208, value209, value210, value211, value212, value213, value214, value215, value216, value217,
        value218, value219, value220, value221, value222, value223, value224, value225, value226, value227, value228, value229, value230, value231, value232, value233, value234, value235, value236,
        value237, value238, value239, value240, value241, value242, value243, value244, value245, value246, value247, value248, value249, value250, value251, value252, value253, value254, value255,
        value256, value257, value258, value259, value260, value261, value262, value263, value264, value265, value266, value267, value268, value269, value270, value271, value272, value273, value274,
        value275, value276, value277, value278, value279, value280, value281, value282, value283, value284, value285, value286, value287, value288, value289, value290, value291, value292, value293,
        value294, value295, value296, value297, value298, value299, value300, value301, value302, value303, value304, value305, value306, value307, value308, value309, value310, value311, value312,
        value313, value314, value315, value316, value317, value318, value319, value320, value321, value322, value323, value324, value325, value326, value327, value328, value329, value330, value331,
        value332, value333, value334, value335, value336, value337, value338, value339, value340, value341, value342, value343, value344, value345, value346, value347, value348, value349, value350,
        value351, value352, value353, value354, value355, value356, value357, value358, value359, value360, value361, value362, value363, value364, value365, value366, value367, value368, value369,
        value370, value371, value372, value373, value374, value375, value376, value377, value378, value379, value380, value381, value382, value383, value384, value385, value386, value387, value388,
        value389, value390, value391, value392, value393, value394, value395, value396, value397, value398, value399, value400, value401, value402, value403, value404, value405, value406, value407,
        value408, value409, value410, value411, value412, value413, value414, value415, value416, value417, value418, value419, value420, value421, value422, value423, value424, value425, value426,
        value427, value428, value429, value430, value431, value432, value433, value434, value435, value436, value437, value438, value439, value440, value441, value442, value443, value444, value445,
        value446, value447, value448, value449, value450, value451, value452, value453, value454, value455, value456, value457, value458, value459, value460, value461, value462, value463, value464,
        value465, value466, value467, value468, value469, value470, value471, value472, value473, value474, value475, value476, value477, value478, value479, value480, value481, value482, value483,
        value484, value485, value486, value487, value488, value489, value490, value491, value492, value493, value494, value495, value496, value497, value498, value499, value500)
        .collect(Collectors.toList());
    int anzahlSpaltenBisKeineWerteMehr = list.size();
    for (int index = list.size() - 1; index >= 0; index--) {
      if (!NOT_MAPPED.equals(list.get(index))) {
        anzahlSpaltenBisKeineWerteMehr = index + 1;
        break;
      }
    }
    return list.stream() //
        .limit(anzahlSpaltenBisKeineWerteMehr) //
        .map(value -> {
          if (NOT_MAPPED.equals(value)) {
            return "";
          }
          return value;
        }) //
        .collect(toList());
  }
}
