What is required to implement the solution?