public static MaplePacket giveForeignDash(List<Pair<MapleBuffStat, Integer>> statups, int duration, int cid) {
        MaplePacketLittleEndianWriter mplew = new MaplePacketLittleEndianWriter();

        mplew.writeShort(SendPacketOpcode.GIVE_FOREIGN_BUFF);
        mplew.writeInt(cid);
        mplew.writeLong(0);
        mplew.writeLong(MapleBuffStat.DASH.getValue());
        mplew.writeShort(0);
        for (Pair<MapleBuffStat, Integer> stat : statups) {
            if (stat.getLeft().getValue() != MapleBuffStat.DASH.getValue()) {
                mplew.writeInt(stat.getRight().shortValue());
                mplew.writeInt(5001005);
                mplew.write(HexTool.getByteArrayFromHexString("1A 7C 8D 35"));
                mplew.writeShort(duration);
            }
        }
        mplew.writeShort(0);

        return mplew.getPacket();
    }