Updated to include data class functions and menu