public IPluginResult InitializePlugin(IEnumerable<IPluginArgument> arguments)
		{
			var urlReferrerArgument = arguments.Find<UrlReferrerPluginArgument>();
			var session = arguments.Find<SessionPluginArgument>();
			NavigationDescription urlReferrer = null;

			if (urlReferrerArgument.UrlReferrer == null)
			{
				urlReferrer = InitNavigationDescriptionByDefault();
				session.Session[_previosUrl] = urlReferrer;
				return new BottomButtonsPluginResult { CancelNavigation = urlReferrer };
			}
			else if (!urlReferrerArgument.UrlReferrer.LocalPath.Contains(string.Format("/{0}/", NameHelper.OrderFulfillmentManagement.Area)) 
								&& !urlReferrerArgument.UrlReferrer.Query.Contains(string.Format("%2f{0}%2f", NameHelper.OrderFulfillmentManagement.Area)))
			{
				urlReferrer = new NavigationDescription { PublicUrl = urlReferrerArgument.UrlReferrer.ToString() };
				session.Session[_previosUrl] = urlReferrer;
			}

			var previosUrl = session.Session[_previosUrl] as NavigationDescription;
			if (previosUrl != null)
			{
				return new BottomButtonsPluginResult { CancelNavigation = previosUrl };
			}
			else
			{
				var navigationDescription = InitNavigationDescriptionByDefault();
				return new BottomButtonsPluginResult { CancelNavigation = navigationDescription };
			}

		}
		private NavigationDescription InitNavigationDescriptionByDefault()
		{
			string action = null;
			string controller = null;
			string area = null;

			if (_securityContext.CurrentUser.HasUserAnyRoles(RoleType.Appraiser, RoleType.AppraisalCompanyAdmin, RoleType.CompanyAdminAndAppraiser))
			{
				area = NameHelper.Dashboard.Area;
				controller = NameHelper.Dashboard.HotList.Controller;
				action = NameHelper.Dashboard.HotList.Index;
			}
			else if (_securityContext.CurrentUser.HasUserAnyRoles(RoleType.ClientAdmin, RoleType.Underwriter, RoleType.Processor, RoleType.LoanOfficer,
																												RoleType.CSR, RoleType.JuniorUW, RoleType.CloserFunder, RoleType.OperationsManager,
																												RoleType.SuperUser, RoleType.OrderAdmin, RoleType.UserAdministrator))
			{
				area = NameHelper.Dashboard.Area;
				controller = NameHelper.Dashboard.NewOrders.Controller;
				action = NameHelper.Dashboard.NewOrders.Index;
			}
			else
			{
				//TBD
				action = NameHelper.Home.Index;
				controller = NameHelper.Home.Controller;
				area = string.Empty;
			}

			var cancelNavigation = new NavigationDescription { Action = action, Area = area, Conroller = controller };

			return cancelNavigation;
		}