// Path: src/main/java/com/gikk/twirk/enums/USER_TYPE.java
// public enum USER_TYPE{
// 	/** Type for the owner of the channel (i.e. the user with the
// 	 * same user name as the channel's name. This type has the highest value, 9*/
// 	OWNER(9),
//     
// 	/** Type for mods in the channel. This type has the second highest value, 6 */
// 	MOD(6),
// 
// 	/** Type for Twitch's global mods. This type has a value of 4*/
// 	GLOBAL_MOD(4),
// 
// 	/** Type for Twitch's admins. This type has a value of 4*/
// 	ADMIN(4),
// 
// 	/** Type for Twitch's staff members. This type has a value of 4*/
// 	STAFF(4),
// 
//     /** Type for channel subscribers. This type has a value of 2.
//      *  Note that both Turbo and Subs are given this type.
//      *  For more granularity, check out {@link TwitchUser#isSub()}  and  {@link TwitchUser#isMod()}
//      */
//     SUBSCRIBER(2),
// 
// 	/** Type for users that does not fit into any other classes. This type has a value of 0*/
// 	DEFAULT(0);
// 
// 	/** This type's value. Useful for regulating which kind of users should trigger / can perform
// 	 * certain actions. <br><br>
// 	 *
// 	 * For example:<br>
// 	 * <pre><code>if( user.USER_TYPE.value == USER_TYPE.MOD.value )</code>
// 	 * 	<code>doSomething();</code></pre>
// 	 */
// 	public final int value;
// 
// 	private USER_TYPE(int value) {
// 		this.value = value;
// 	}
// }


import com.gikk.twirk.enums.USER_TYPE;
    public String getUserName() {
        return userName;
    }

    @Override
	public String getDisplayName(){
		return displayName;
	}

    @Override
    public boolean isOwner() {
        return isOwner;
    }

    @Override
	public boolean isMod(){
		return isMod;
	}

    @Override
	public boolean isTurbo(){
		return isTurbo;
	}

    @Override
	public boolean isSub(){
		return isSub;
	}

    @Override
// Path: src/main/java/com/gikk/twirk/enums/USER_TYPE.java
// public enum USER_TYPE{
// 	/** Type for the owner of the channel (i.e. the user with the
// 	 * same user name as the channel's name. This type has the highest value, 9*/
// 	OWNER(9),
//     
// 	/** Type for mods in the channel. This type has the second highest value, 6 */
// 	MOD(6),
// 
// 	/** Type for Twitch's global mods. This type has a value of 4*/
// 	GLOBAL_MOD(4),
// 
// 	/** Type for Twitch's admins. This type has a value of 4*/
// 	ADMIN(4),
// 
// 	/** Type for Twitch's staff members. This type has a value of 4*/
// 	STAFF(4),
// 
//     /** Type for channel subscribers. This type has a value of 2.
//      *  Note that both Turbo and Subs are given this type.
//      *  For more granularity, check out {@link TwitchUser#isSub()}  and  {@link TwitchUser#isMod()}
//      */
//     SUBSCRIBER(2),
// 
// 	/** Type for users that does not fit into any other classes. This type has a value of 0*/
// 	DEFAULT(0);
// 
// 	/** This type's value. Useful for regulating which kind of users should trigger / can perform
// 	 * certain actions. <br><br>
// 	 *
// 	 * For example:<br>
// 	 * <pre><code>if( user.USER_TYPE.value == USER_TYPE.MOD.value )</code>
// 	 * 	<code>doSomething();</code></pre>
// 	 */
// 	public final int value;
// 
// 	private USER_TYPE(int value) {
// 		this.value = value;
// 	}
// }


// Path: src/main/java/com/gikk/twirk/types/users/TwitchUserImpl.java
import com.gikk.twirk.enums.USER_TYPE;

    public String getUserName() {
        return userName;
    }

    @Override
	public String getDisplayName(){
		return displayName;
	}

    @Override
    public boolean isOwner() {
        return isOwner;
    }

    @Override
	public boolean isMod(){
		return isMod;
	}

    @Override
	public boolean isTurbo(){
		return isTurbo;
	}

    @Override
	public boolean isSub(){
		return isSub;
	}

    @Override
	public USER_TYPE getUserType(){