using System.Collections;
public string administration = "Administration";
public string reports = "Reports";
public class Administration
public string userAdmin = "User Admin";
public string productAdmin = "Product Admin";
public string orderAdmin = "Order Admin";
public string createUser = "Create User";
public string editUser = "Edit User";
public class ProductAdmin
public string allProducts = "All Products";
public string createProduct = "Create Product";
public string myProducts = "My Products";
public string orderReports = "Order Reports";
public class OrderReports
public string auditReports = "Audit Reports";
public string createOrder = "Create Order";
public class AuditReports
public string updatedOrders = "Updated Orders";
public string createdOrders = "Created Orders";
public string winTechReport = "Win Tech Report";
public string microsoftReport = "Microsoft Report";
public static void Main(string[] args)
public static void PrintHierarchy()
Menu myMenu = new Menu();
Administration myAdministration = new Administration();
UserAdmin myUserAdmin = new UserAdmin();
ProductAdmin myProductAdmin = new ProductAdmin();
AllProducts myAllProducts = new AllProducts();
OrderAdmin myOrderAdmin = new OrderAdmin();
OrderReports myOrderReports = new OrderReports();
AuditReports myAuditReports = new AuditReports();
Reports myReports = new Reports();
ArrayList myMenuList = new ArrayList();
myMenuList.Add(myMenu.administration);
myMenuList.Add(myMenu.reports);
ArrayList myAdministrationList = new ArrayList();
myAdministrationList.Add(myAdministration.userAdmin);
myAdministrationList.Add(myAdministration.productAdmin);
myAdministrationList.Add(myAdministration.orderAdmin);
ArrayList myUserAdminList = new ArrayList();
myUserAdminList.Add(myUserAdmin.createUser);
myUserAdminList.Add(myUserAdmin.editUser);
ArrayList myProductAdminList = new ArrayList();
myProductAdminList.Add(myProductAdmin.allProducts);
myProductAdminList.Add(myProductAdmin.createProduct);
ArrayList myAllProductsAdminList = new ArrayList();
myAllProductsAdminList.Add(myAllProducts.myProducts);
ArrayList myOrderAdminList = new ArrayList();
myOrderAdminList.Add(myOrderAdmin.orderReports);
ArrayList myOrderReportsList = new ArrayList();
myOrderReportsList.Add(myOrderReports.auditReports);
myOrderReportsList.Add(myOrderReports.createOrder);
ArrayList myAuditReportsList = new ArrayList();
myAuditReportsList.Add(myAuditReports.updatedOrders);
myAuditReportsList.Add(myAuditReports.createdOrders);
ArrayList myReportsList = new ArrayList();
myReportsList.Add(myReports.winTechReport);
myReportsList.Add(myReports.microsoftReport);
foreach (var menuItem in myMenuList)
Console.WriteLine("-" + menuItem);
if (menuItem.ToString() == "Administration")
foreach (var administrationItem in myAdministrationList)
Console.WriteLine("\t-" + administrationItem);
if (administrationItem.ToString() == "User Admin")
foreach (var userAdminItem in myUserAdminList)
Console.WriteLine("\t\t-" + userAdminItem);
else if (administrationItem.ToString() == "Product Admin")
foreach (var productAdminItem in myProductAdminList)
Console.WriteLine("\t\t-" + productAdminItem);
if (productAdminItem.ToString() == "All Products")
foreach (var allProductsItem in myAllProductsAdminList)
Console.WriteLine("\t\t\t-" + allProductsItem);
else if (administrationItem.ToString() == "Order Admin")
foreach (var orderAdminItem in myOrderAdminList)
Console.WriteLine("\t\t-" + orderAdminItem);
foreach (var orderReportsItem in myOrderReportsList)
Console.WriteLine("\t\t\t-" + orderReportsItem);
if (orderReportsItem.ToString() == "Audit Reports")
foreach (var auditReportsItem in myAuditReportsList)
Console.WriteLine("\t\t\t\t-" + auditReportsItem);
else if (menuItem.ToString() == "Reports")
foreach (var reportsItem in myReportsList)
Console.WriteLine("\t-" + reportsItem);