diff --git a/tracker/issueadvsearch.py b/tracker/issueadvsearch.py
index f702763..7185b1f 100644
--- a/tracker/issueadvsearch.py
+++ b/tracker/issueadvsearch.py
@@ -1,7 +1,6 @@
-# Copyright 2016 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style
-# license that can be found in the LICENSE file or at
-# https://developers.google.com/open-source/licenses/bsd
+# Copyright 2016 The Chromium Authors
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
 
 """Classes that implement the advanced search feature page.
 
@@ -13,11 +12,9 @@
 from __future__ import division
 from __future__ import absolute_import
 
-import logging
 import re
 
 from features import savedqueries_helpers
-from framework import flaskservlet
 from framework import framework_helpers
 from framework import permissions
 from framework import servlet
@@ -32,7 +29,7 @@
   """IssueAdvancedSearch shows a form to enter an advanced search."""
 
   _PAGE_TEMPLATE = 'tracker/issue-advsearch-page.ezt'
-  _MAIN_TAB_MODE = flaskservlet.FlaskServlet.MAIN_TAB_ISSUES
+  _MAIN_TAB_MODE = servlet.Servlet.MAIN_TAB_ISSUES
 
   # This form *only* redirects to a GET request, and permissions are checked
   # in that handler.
@@ -123,8 +120,8 @@
       search_term = '%s%s' % (operator, ','.join(values))
       search_query.append(search_term)
 
-  # def GetIssueAdvSearchPage(self, **kwargs):
-  #   return self.handler(**kwargs)
+  def GetIssueAdvSearchPage(self, **kwargs):
+    return self.handler(**kwargs)
 
-  # def PostIssueAdvSearchPage(self, **kwargs):
-  #   return self.handler(**kwargs)
\ No newline at end of file
+  def PostIssueAdvSearchPage(self, **kwargs):
+    return self.handler(**kwargs)
