public void gainMeso(long gain, boolean show, boolean inChat) {
        if (meso + gain < 0L || meso + gain > 9999999999L) {
            client.getSession().write(CWvsContext.enableActions());
            return;
        }
        meso += gain;
        if (meso >= 1000000L) {
            finishAchievement(31);
        }
        if (meso >= 10000000L) {
            finishAchievement(32);
        }
        if (meso >= 100000000L) {
            finishAchievement(33);
        }
        if (meso >= 1000000000L) {
            finishAchievement(34);
        }
        updateSingleStat(MapleStat.MESO, meso, false);
        client.getSession().write(CWvsContext.enableActions());
        if (show) {
            client.getSession().write(InfoPacket.showMesoGain(gain, inChat));
        }
    }