artifact_id;status_id;status_name;priority;submitter_id;submitter_name;assigned_to_id;assigned_to_name;open_date;close_date;last_modified_date;summary;details;"Component";"Operating System";"Product"
675;1;"Open";3;102;"Sylvain Le Gall";102;"Sylvain Le Gall";"2010-06-25 14:17";"";"2010-06-25 14:17";"pretty print string in output";"Some
    ""Library and command line utility like POSIX tee command. It allows to\nredirect stderr/stdout of a command to a file. Unlike POSIX tee, the file\nhas a specific format to differentiate time/stdout/stderr."";

The actual program will output the string on one line. It should try to pretty print it:
- insert a break before before non blank character
- insert a break after '\n'

If we break the line we should insert a '\\' char at the end of the line.";"None";"None";"None"
676;1;"Open";3;102;"Sylvain Le Gall";102;"Sylvain Le Gall";"2010-06-25 14:20";"";"2010-09-01 15:56";"detect reuse of datastructure";"When we output datastructure, we don't detect that there are common patterns in it.

e.g
{
          build_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };
          install_type =
            (""internal"", Some (VInt (0, VInt (1, VInt (0, VEnd)))));
          install_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };
          uninstall_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };
          clean_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };
          distclean_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };
}

We should detect this and output:

let a0 = 
   {
        pre_command = [(EBool true, None)];
        post_command = [(EBool true, None)];
    }
in
{
          build_custom = a0;
          install_type =
            (""internal"", Some (VInt (0, VInt (1, VInt (0, VEnd)))));
          install_custom = a0;
          uninstall_custom = a0;
          clean_custom = a0;
          distclean_custom = a0;
}


";"None";"None";"None"
677;1;"Open";3;102;"Sylvain Le Gall";102;"Sylvain Le Gall";"2010-06-25 14:21";"";"2010-09-01 15:56";"opening and closing tag are misaligned";"E.g.

          distclean_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
               };

should be
          distclean_custom =
            {
               pre_command = [(EBool true, None)];
               post_command = [(EBool true, None)];
             };
";"None";"None";"None"