diff --git a/src/main.cpp b/src/main.cpp
index 6c2ff22..83212d2 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,31 +1,34 @@
-#include<QApplication>
-#include "chatdialog.h"
-#include <QMessageBox>
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
+/*
+ * Copyright (c) 2013, Regents of the University of California
+ *                     Yingdi Yu
+ *
+ * BSD license, See the LICENSE file for more information
+ *
+ * Author: Yingdi Yu <yingdi@cs.ucla.edu>
+ */
+
+#include <QApplication>
+#include <QSystemTrayIcon>
+
+#include "chronochat.h"
+#include "contactpanel.h"
 
 int main(int argc, char *argv[])
 {
-  // Q_INIT_RESOURCE(demo);
   QApplication app(argc, argv);
 
-  if (!QSystemTrayIcon::isSystemTrayAvailable()) {
-    QMessageBox::critical(0, QObject::tr("Systray"),
-			  QObject::tr("I couldn't detect any system tray "
-				      "on this system."));
-    return 1;
-  }
-  QApplication::setQuitOnLastWindowClosed (false);
 
-#ifdef __APPLE__
-	app.setWindowIcon(QIcon(":/demo.icns"));
-#else
-	app.setWindowIcon(QIcon(":/images/icon_large.png"));
-#endif
+//   app.setWindowIcon(QIcon("/Users/yuyingdi/Develop/QT/demo.icns"));
+// // #else
+// // 	app.setWindowIcon(QIcon("/Users/yuyingdi/Develop/QT/images/icon_large.png"));
+// // #endif
 
-  ChatDialog dialog;
+  ContactPanel contactPanel;
 
-  dialog.show ();
-  dialog.activateWindow ();
-  dialog.raise ();
-
+  contactPanel.show ();
+  contactPanel.activateWindow ();
+  contactPanel.raise ();
+  
   return app.exec();
 }
