   import java.io.*;
   import java.util.*;
    public class HTMLreader
   {
      public static File template = new File("template.html");
      public static File listOfFiles = new File("list.txt");
      public static File listOfNoSideFiles = new File("nosidelist.txt");
      public static File target;
      public static String navigation = "<!1251016navigation>";
      public static String footer = "<!1251016Footer>";
      public static LinkedList<String> navi = new LinkedList<String>();
      public static LinkedList<String> nosidenavi = new LinkedList<String>();
      public static LinkedList<String> cont = new LinkedList<String>();
      public static LinkedList<String> foot = new LinkedList<String>();
      public static LinkedList<File> list = new LinkedList<File>();
      public static LinkedList<File> nosidelist = new LinkedList<File>();
      public static String side = "<link rel=\"stylesheet\" type=\"text/css\" media=\"screen,projection,print\" href=\"./css/mf54_grid.css\" /><link rel=\"stylesheet\" type=\"text/css\" media=\"screen,projection,print\" href=\"./css/mf54_content.css\" />";
      public static String noside = "<link rel=\"stylesheet\" type=\"text/css\" media=\"screen,projection,print\" href=\"./css/mf54_grid_nosidebar.css\" /><link rel=\"stylesheet\" type=\"text/css\" media=\"screen,projection,print\" href=\"./css/mf54_content_nosidebar.css\" />";
       public static void main(String[] args) throws Exception
      {
         Scanner a = new Scanner(listOfFiles);
         while(a.hasNextLine())
         {
            list.add(new File(a.nextLine()));
         }
         Scanner g = new Scanner(listOfNoSideFiles);
         while(g.hasNextLine())
         {
            nosidelist.add(new File(g.nextLine()));
         }
         System.out.println(side);
         System.out.println(list);
         System.out.println(nosidelist);
         Scanner b = new Scanner(template);
         Scanner c = new Scanner(template);
         while(b.nextLine().compareTo(navigation) != 0)
         {
            String s = c.nextLine();
            if(s.compareTo(side) == 0)
            {
               nosidenavi.add(noside);
               System.out.println("yes");
            }
            else
            {
               nosidenavi.add(s);
            }
            navi.add(s);
            
         }
         navi.add(navigation);
         nosidenavi.add(navigation);
         while(b.hasNextLine())
         {
            foot.add(b.nextLine());
         }
         for(File f : list)
         {
            Scanner d = new Scanner(f);
            String e = "";
            while(d.nextLine().compareTo(navigation) != 0);
            do
            {
               e = d.nextLine();
               cont.add(e);
            }
            while(e.compareTo(footer) != 0);
            d.close();
            cont.remove(cont.getLast());  
            f.delete();
            FileWriter outFile = new FileWriter(f);
            PrintWriter out = new PrintWriter(outFile);
            for(String s : navi)
               out.println(s);
            for(String s : cont)
               out.println(s);
            for(String s : foot)
               out.println(s);
            out.close();
            cont = new LinkedList<String>();
         }
         for(File f : nosidelist)
         {
            Scanner d = new Scanner(f);
            String e = "";
            String h = d.nextLine();
            while(h.compareTo(navigation) != 0)
            {
         	h = d.nextLine();
         	}
            do
            {
               e = d.nextLine();
               cont.add(e);
            }
            while(e.compareTo(footer) != 0);
            d.close();
            cont.remove(cont.getLast());  
            f.delete();
            FileWriter outFile = new FileWriter(f);
            PrintWriter out = new PrintWriter(outFile);
            for(String s : nosidenavi)
               out.println(s);
            for(String s : cont)
               out.println(s);
            for(String s : foot)
               out.println(s);
            out.close();
            cont = new LinkedList<String>();
         }
      }
   }

