bca9ada795
* Initial draft of the solution * Remove old format * Address requested changes * Add Index option test case * nit changes * Address Martin reviews, improve unit tests and solve 8577 * Add unit tests * Nit change * Address requested changes * Address Martin reviews * Nit changes and more unit tests * Nit change * Address requested changes * Address requested changes