public String getPlayerClass( Player p )
	{
		if ( perm == null )
		{
			RegisteredServiceProvider<Permission> permissionProvider = getServer().getServicesManager().getRegistration( net.milkbowl.vault.permission.Permission.class );
			
			if ( permissionProvider == null )
			{
				System.out.println( "Vault plugin was not detected. Please install it or else we can not properly format chat." );
			}
			else
			{
				perm = permissionProvider.getProvider();
			}
		}
		
		if ( perm != null )
		{
			String[] groups;
			try
			{
				groups = perm.getPlayerGroups( p );
			}
			catch ( UnsupportedOperationException e )
			{
				getLogger().info( "Valut Exception: " + e.getMessage() );
				groups = new String[0];
			}
			
			List<String> classes = getConfig().getStringList( "classes" );
			
			if ( groups.length > 1 )
				for ( String grp : groups )
				{
					if ( classes.contains( grp.toLowerCase() ) )
					{
						return grp;
					}
				}
		}
		
		return getConfig().getString( "global.defaultClass", "Awakened" );
	}