public static final void NPCShop(final SeekableLittleEndianAccessor slea, final MapleClient c, final MapleCharacter chr) {
	final byte bmode = slea.readByte();

	switch (bmode) {
	    case 0: {
		final MapleShop shop = chr.getShop();
		if (shop == null) {
		    return;
		}
		slea.skip(2);
		final int itemId = slea.readInt();
		final short quantity = slea.readShort();
		shop.buy(c, itemId, quantity);
		break;
	    }
	    case 1: {
		final MapleShop shop = chr.getShop();
		if (shop == null) {
		    return;
		}
		final byte slot = (byte) slea.readShort();
		final int itemId = slea.readInt();
		final short quantity = slea.readShort();
		shop.sell(c, InventoryConstants.getInventoryType(itemId), slot, quantity);
		break;
	    }
	    case 2: {
		final MapleShop shop = chr.getShop();
		if (shop == null) {
		    return;
		}
		final byte slot = (byte) slea.readShort();
		shop.recharge(c, slot);
		break;
	    }
	    default:
		chr.setConversation(0);
		break;
	}
    }