{
byte[] remaining = new byte[data.length - lenght];
byte[] packet = new byte[lenght - 2];
System.arraycopy(data, 2, packet, 0, lenght - 2);
System.arraycopy(data, lenght, remaining, 0, remaining.length);
ClientBasePacket runnable = PacketHandler.handlePacket(packet, this);
if(runnable != null)
{
if(GSConnection.DEBUG_LS_GS)
{
log.info("LoginServer: Reading packet from GS [" + getServerId() + "]: " + runnable.getClass().getSimpleName());
}
ThreadPoolManager.getInstance().executeLSGSPacket(runnable);
}
return remaining;
}