public Dictionary<string,string> variables;// { get; set; }
		
		public SummitAttendee(WikiText_Template templateData)
		{
			variables = templateData.Variables;	
			setValue("Name", "summit_attendee_name1");
			setValue("Email", "summit_attendee_email1");
			setValue("Wiki_UserName", "summit_attendee_wiki_username1");
			setValue("OWASP_Sponsor", "summit_attendee_owasp_sponsor");
			setValue("TimePaidBy", "summit_attendee_summit_time_paid_by_name1");
			setValue("ExpensesPaidBy", "summit_attendee_summit_expenses_paid_by_name1");
			setValue("Status", "status");			
			setValue("ProjectedFundingCost", "Projected Funding Cost", 
				(rawValue)=>{
								var splittedData = rawValue.split(" ");
								if (rawValue.starts("$") && splittedData.size() > 1 )
									return splittedData[0].removeFirstChar().toInt();
								return 0;
							});
			setValue("ProjectLeadership_New", "Project Leadership (less than 6 months old)");
			setValue("ProjectLeadership_Old", "Project Leadership (more than 6 months old)");
			setValue("ReleaseLeadership_New", "Release Leadership (less than 6 months old)");
			setValue("ReleaseLeadership_Old", "Release Leadership (more than 6 months old)");
			setValue("ProjectContribution_New", "Project Contribution  (less than 6 months old)");
			setValue("ProjectContribution_Old", "Project Contribution  (more than 6 months old)");
			setValue("ReleaseContribution_New", "Release Contribution (less than 6 months old)");
			setValue("ReleaseContribution_Old", "Release Contribution (more than 6 months old)");
			setValue("CommitteeMembership", "Committee Membership");
			setValue("ChapterCoLeadership", "Chapter Co-Leadership");
			setValue("ConferenceCoLeadership", "Conference Co-Leadership");
			
			setValue("AttendeeWikiPage", "attendee_home_page", (rawValue)=> rawValue.remove("<!--Please replace DO NOT EDIT this string --> ")); 
			
			calculatePoints();
			//Name = Variables.get("summit_attendee_name1");
			//Email = Variables.get("summit_attendee_email1");
		}
    	public string canParseAllTemplates()
    	{
    		var summitApi = new API_OWASP_Summit_2011(); 
    		var attendeesPages = summitApi.attendees(true);
    		foreach(var testPage in attendeesPages)
			{
				if (testPage.contains("Summit_2011_Attendee"))
				{
					var page = testPage.split("|")[0].trim();
					//return testPage;
					
					var wikiApi = new OwaspWikiAPI(false); 
					 
					var templateData = new WikiText_Template();
					
					templateData.parse(wikiApi,page);
					Assert.That(templateData.Status.str() == "Parsed", "Could not parse page: {0}".format(page));
				}
			}
			return "ok";
    	}
        public string canParseAllTemplates()
        {
            var summitApi      = new API_OWASP_Summit_2011();
            var attendeesPages = summitApi.attendees(true);

            foreach (var testPage in attendeesPages)
            {
                if (testPage.contains("Summit_2011_Attendee"))
                {
                    var page = testPage.split("|")[0].trim();
                    //return testPage;

                    var wikiApi = new OwaspWikiAPI(false);

                    var templateData = new WikiText_Template();

                    templateData.parse(wikiApi, page);
                    Assert.That(templateData.Status.str() == "Parsed", "Could not parse page: {0}".format(page));
                }
            }
            return("ok");
        }
    	public SummitAttendee getAttendee(string page)
    	{
    		var wikiApi = new OwaspWikiAPI(false);   
					
			var templateData = new WikiText_Template();  
					  
			templateData.parse(wikiApi,page); 
			//return templateData.ParseTree.Root.ChildNodes;    
			return new SummitAttendee(templateData);//.Variables; 
    	}