// Path: src/main/java/org/votesmart/data/Npat.java
// @XmlRootElement(name="npat")
// public class Npat extends GeneralInfoBase {
// 	public String candidateId;
// 	public String candidate;
// 	public String passed;
// 	public String npatName;
// 	public String electionName;
// 	public String electionYear;
// 	public String electionDate;
// 	public String electionStage;
// 	public String surveyMessage;
// 	public ArrayList<Section> section;
// 	
// 	@XmlType(name="section", namespace="npat")
// 	public static class Section {
// 		public String name;
// 		public ArrayList<Row> row;
// 		
// 		@XmlType(name="row", namespace="npat.section")
// 		public static class Row {
// 			public String path;
// 			public String rowText;
// 			public String rowType;
// 			public String open;
// 			public String optionText;
// 			public String answerText;
// 			public ArrayList<Row> row;
// 		}
// 	}
// 
// }


import org.votesmart.api.*;
import org.votesmart.data.Npat;

package org.votesmart.classes;


/**
 * <pre>
 * NPAT/PCT Class
 * * - Required
 * * - Multiple rows
 * * - Possibly Recursive
 * 
 * Npat.getNpat()
 * This method returns the candidates most recently filled out NPAT/PCT. 
 * NOTE: This is the only class that responds with recursive data.
 * Input: candidateId*
 * Output: {@link Npat}
 * 
 * ========== EXAMPLE USAGE =============
 * 
 * // Npat class
 * NpatClass npatClass = new NpatClass();
 * 
 * // Npat if it exists
 * Npat npat = npatClass.getNpat(leader.candidateId);
 * </pre> 
 *
 */
public class NpatClass extends ClassesBase {

	/**
	 * Constructor for testing purposes.
	 * 
	 * @param api
	 */
	public NpatClass(VoteSmartAPI api) {
		super(api);
	}
	
	/**
	 * Default Constructor
	 */
	public NpatClass() throws VoteSmartException {

// Path: src/main/java/org/votesmart/data/Npat.java
// @XmlRootElement(name="npat")
// public class Npat extends GeneralInfoBase {
// 	public String candidateId;
// 	public String candidate;
// 	public String passed;
// 	public String npatName;
// 	public String electionName;
// 	public String electionYear;
// 	public String electionDate;
// 	public String electionStage;
// 	public String surveyMessage;
// 	public ArrayList<Section> section;
// 	
// 	@XmlType(name="section", namespace="npat")
// 	public static class Section {
// 		public String name;
// 		public ArrayList<Row> row;
// 		
// 		@XmlType(name="row", namespace="npat.section")
// 		public static class Row {
// 			public String path;
// 			public String rowText;
// 			public String rowType;
// 			public String open;
// 			public String optionText;
// 			public String answerText;
// 			public ArrayList<Row> row;
// 		}
// 	}
// 
// }


// Path: src/main/java/org/votesmart/classes/NpatClass.java
import org.votesmart.api.*;
import org.votesmart.data.Npat;

package org.votesmart.classes;


/**
 * <pre>
 * NPAT/PCT Class
 * * - Required
 * * - Multiple rows
 * * - Possibly Recursive
 * 
 * Npat.getNpat()
 * This method returns the candidates most recently filled out NPAT/PCT. 
 * NOTE: This is the only class that responds with recursive data.
 * Input: candidateId*
 * Output: {@link Npat}
 * 
 * ========== EXAMPLE USAGE =============
 * 
 * // Npat class
 * NpatClass npatClass = new NpatClass();
 * 
 * // Npat if it exists
 * Npat npat = npatClass.getNpat(leader.candidateId);
 * </pre> 
 *
 */
public class NpatClass extends ClassesBase {

	/**
	 * Constructor for testing purposes.
	 * 
	 * @param api
	 */
	public NpatClass(VoteSmartAPI api) {
		super(api);
	}
	
	/**
	 * Default Constructor
	 */
	public NpatClass() throws VoteSmartException {

		super();
