Ticket #6: Support multiple levels for sample 1 and 2, still trying to update sample 3 to work with the refactoring