private void extractFileContent() throws Exception{
 
    int first_frame, num_frames, looping_frames, frames_per_second; //data from file
    int end_frame; 
    String description = "";
    
    
    for( int i = 0; i < lines.size(); i++){
      String line = lines.get(i);
      line = line.trim();
      if( line.length() == 0) continue;
      if( line.startsWith("//")) continue;
    
   
      String tokens[] = line.split("\t");
//      System.out.println(parts.length);
      if( tokens.length >= 4){
        try{
          
          // get frame-data
          first_frame       = Integer.parseInt(tokens[0]);
          num_frames        = Integer.parseInt(tokens[1]);
          looping_frames    = Integer.parseInt(tokens[2]);
          frames_per_second = Integer.parseInt(tokens[3]);
          
          end_frame = first_frame + num_frames; //TODO: set the first frame of next animation
          
          // get description
          for(int j = 4; j < tokens.length; j++ ){
            tokens[j] = tokens[j].trim();
            if( tokens[j].length() == 0) continue;
            if( tokens[j].startsWith("//")){
              tokens[j] = tokens[j].replaceAll("[/]", "");
              tokens[j] = tokens[j].trim();
              description = tokens[j];
            }
          }
          
          // build new animation from data
          Q3_Animation anim = new Q3_Animation
          (
              first_frame, 
              num_frames, 
              looping_frames, 
              frames_per_second,
              description,
              end_frame
          );
          
          // add animation to list
          animations.add(anim);
        } catch (NumberFormatException e){
          e.printStackTrace();
        }
      }
    }
  }