be ready to build different types of handler