import java.io.*;
import java.net.*;

public class AltCapsServer {
  public static void main(String args[]) throws Exception {    
    int port = Integer.parseInt(args[0]);
    ServerSocket serverSocket = new ServerSocket(port);
    System.err.println("AltCapsServer listening at port " + port);
    while (true) {
      Socket socket = serverSocket.accept();

      Thread networkListenThread = new Thread() {
        public void run() {
          try {
            int b;
            boolean parity = false;
            while ((b = socket.getInputStream().read()) != -1) {
              if (parity) {
                b = Character.toUpperCase(b);
              }
              else {
                b = Character.toLowerCase(b);
              }
              parity = !parity;
              socket.getOutputStream().write(b);
            }
          } catch (IOException e) {
            System.err.println(e);
          }
        }
      };
      networkListenThread.start();
    }
  }
}
