// Path: src/main/java/p455w0rdslib/LibRegistry.java
// public class LibRegistry {
// 
// 	private static Map<UUID, String> NAME_REGISTRY = Maps.newHashMap();
// 	private static Map<String, UUID> UUID_REGISTRY = Maps.newHashMap();
// 	private static Map<String, ItemStack> SKULL_REGISTRY = Maps.newHashMap();
// 
// 	public static Map<String, ItemStack> getSkullRegistry() {
// 		return SKULL_REGISTRY;
// 	}
// 
// 	public static Map<UUID, String> getNameRegistry() {
// 		return NAME_REGISTRY;
// 	}
// 
// 	public static Map<String, UUID> getUUIDRegistry() {
// 		return UUID_REGISTRY;
// 	}
// 
// 	public static String getPlayerName(UUID uuid) {
// 		return NAME_REGISTRY.get(uuid);
// 	}
// 
// 	public static boolean registerName(UUID uuid, String name) {
// 		boolean hasChanged = false;
// 		if (!NAME_REGISTRY.containsKey(uuid)) {
// 			NAME_REGISTRY.put(uuid, name);
// 			hasChanged = true;
// 		}
// 		if (!UUID_REGISTRY.containsKey(name)) {
// 			UUID_REGISTRY.put(name, uuid);
// 		}
// 		return hasChanged;
// 	}
// 
// 	public static void registerUUID(String name, UUID uuid) {
// 		registerName(uuid, name);
// 	}
// 
// 	public static void clearNameRegistry() {
// 		NAME_REGISTRY = new HashMap<UUID, String>();
// 		UUID_REGISTRY = new HashMap<String, UUID>();
// 	}
// }
// 
// Path: src/main/java/p455w0rdslib/P455w0rdsLib.java
// @Mod(modid = LibGlobals.MODID, name = LibGlobals.NAME, version = LibGlobals.VERSION, dependencies = LibGlobals.DEPENDENCIES, acceptableRemoteVersions = "*", acceptedMinecraftVersions = "[1.9.4,1.10.2]")
// public class P455w0rdsLib {
// 
// 	@SidedProxy(clientSide = LibGlobals.CLIENT_PROXY, serverSide = LibGlobals.SERVER_PROXY)
// 	public static CommonProxy PROXY;
// 
// 	@Instance(LibGlobals.MODID)
// 	public static P455w0rdsLib INSTANCE;
// 
// 	@EventHandler
// 	public void preInit(FMLPreInitializationEvent e) {
// 		INSTANCE = this;
// 		PROXY.preInit(e);
// 	}
// 
// 	@EventHandler
// 	public void init(FMLInitializationEvent e) {
// 		PROXY.init(e);
// 	}
// 
// }


import java.util.List;
import java.util.Map;
import java.util.UUID;
import org.apache.commons.lang3.StringUtils;
import com.google.common.collect.Lists;
import com.mojang.authlib.GameProfile;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.management.PlayerProfileCache;
import net.minecraft.server.management.UserListOpsEntry;
import net.minecraft.tileentity.TileEntityCommandBlock;
import net.minecraft.world.World;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import p455w0rdslib.LibRegistry;
import p455w0rdslib.P455w0rdsLib;
		return false;
	}

	@SideOnly(Side.SERVER)
	private static boolean isOPServer(EntityPlayer sender) {
		if (sender instanceof EntityPlayerMP) {
			EntityPlayerMP player = (EntityPlayerMP) sender.getEntityWorld().getPlayerEntityByName(sender.getName());
			if (player != null && player.getGameProfile() != null) {
				UserListOpsEntry userentry = player.mcServer.getPlayerList().getOppedPlayers().getEntry(player.getGameProfile());
				return userentry != null && userentry.getPermissionLevel() >= 4;
			}
		}
		return false;
	}

	public static List<UUID> getFullPlayerList() {
		MinecraftServer server = FMLCommonHandler.instance().getMinecraftServerInstance();
		List<UUID> uuidList = Lists.newArrayList();
		if (server != null) {
			PlayerProfileCache playerCache = server.getPlayerProfileCache();
			String[] usernames = EasyMappings.getNames(server);
			for (String username : usernames) {
				uuidList.add(playerCache.getGameProfileForUsername(username).getId());
			}
		}
		return uuidList;
	}

	public static ItemStack getPlayerSkull(String playerName) {
		ItemStack head = null;
// Path: src/main/java/p455w0rdslib/LibRegistry.java
// public class LibRegistry {
// 
// 	private static Map<UUID, String> NAME_REGISTRY = Maps.newHashMap();
// 	private static Map<String, UUID> UUID_REGISTRY = Maps.newHashMap();
// 	private static Map<String, ItemStack> SKULL_REGISTRY = Maps.newHashMap();
// 
// 	public static Map<String, ItemStack> getSkullRegistry() {
// 		return SKULL_REGISTRY;
// 	}
// 
// 	public static Map<UUID, String> getNameRegistry() {
// 		return NAME_REGISTRY;
// 	}
// 
// 	public static Map<String, UUID> getUUIDRegistry() {
// 		return UUID_REGISTRY;
// 	}
// 
// 	public static String getPlayerName(UUID uuid) {
// 		return NAME_REGISTRY.get(uuid);
// 	}
// 
// 	public static boolean registerName(UUID uuid, String name) {
// 		boolean hasChanged = false;
// 		if (!NAME_REGISTRY.containsKey(uuid)) {
// 			NAME_REGISTRY.put(uuid, name);
// 			hasChanged = true;
// 		}
// 		if (!UUID_REGISTRY.containsKey(name)) {
// 			UUID_REGISTRY.put(name, uuid);
// 		}
// 		return hasChanged;
// 	}
// 
// 	public static void registerUUID(String name, UUID uuid) {
// 		registerName(uuid, name);
// 	}
// 
// 	public static void clearNameRegistry() {
// 		NAME_REGISTRY = new HashMap<UUID, String>();
// 		UUID_REGISTRY = new HashMap<String, UUID>();
// 	}
// }
// 
// Path: src/main/java/p455w0rdslib/P455w0rdsLib.java
// @Mod(modid = LibGlobals.MODID, name = LibGlobals.NAME, version = LibGlobals.VERSION, dependencies = LibGlobals.DEPENDENCIES, acceptableRemoteVersions = "*", acceptedMinecraftVersions = "[1.9.4,1.10.2]")
// public class P455w0rdsLib {
// 
// 	@SidedProxy(clientSide = LibGlobals.CLIENT_PROXY, serverSide = LibGlobals.SERVER_PROXY)
// 	public static CommonProxy PROXY;
// 
// 	@Instance(LibGlobals.MODID)
// 	public static P455w0rdsLib INSTANCE;
// 
// 	@EventHandler
// 	public void preInit(FMLPreInitializationEvent e) {
// 		INSTANCE = this;
// 		PROXY.preInit(e);
// 	}
// 
// 	@EventHandler
// 	public void init(FMLInitializationEvent e) {
// 		PROXY.init(e);
// 	}
// 
// }


// Path: src/main/java/p455w0rdslib/util/PlayerUtils.java
import java.util.List;
import java.util.Map;
import java.util.UUID;
import org.apache.commons.lang3.StringUtils;
import com.google.common.collect.Lists;
import com.mojang.authlib.GameProfile;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.management.PlayerProfileCache;
import net.minecraft.server.management.UserListOpsEntry;
import net.minecraft.tileentity.TileEntityCommandBlock;
import net.minecraft.world.World;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import p455w0rdslib.LibRegistry;
import p455w0rdslib.P455w0rdsLib;

		return false;
	}

	@SideOnly(Side.SERVER)
	private static boolean isOPServer(EntityPlayer sender) {
		if (sender instanceof EntityPlayerMP) {
			EntityPlayerMP player = (EntityPlayerMP) sender.getEntityWorld().getPlayerEntityByName(sender.getName());
			if (player != null && player.getGameProfile() != null) {
				UserListOpsEntry userentry = player.mcServer.getPlayerList().getOppedPlayers().getEntry(player.getGameProfile());
				return userentry != null && userentry.getPermissionLevel() >= 4;
			}
		}
		return false;
	}

	public static List<UUID> getFullPlayerList() {
		MinecraftServer server = FMLCommonHandler.instance().getMinecraftServerInstance();
		List<UUID> uuidList = Lists.newArrayList();
		if (server != null) {
			PlayerProfileCache playerCache = server.getPlayerProfileCache();
			String[] usernames = EasyMappings.getNames(server);
			for (String username : usernames) {
				uuidList.add(playerCache.getGameProfileForUsername(username).getId());
			}
		}
		return uuidList;
	}

	public static ItemStack getPlayerSkull(String playerName) {
		ItemStack head = null;
		Map<String, ItemStack> skullCache = LibRegistry.getSkullRegistry();