小蓝同学在玩一个养成类游戏,他的梦想是收集到所有的卡牌。现在小蓝同学手上有

张不同的一级卡牌,在这个游戏中相同等级的两张卡牌可以合成一张新的卡牌,且新合成的卡牌等级提升

,只要合成所使用的卡牌不一样,那么合成出来的卡牌也不一样,比如说

,

,

,

是四张不一样的且等级相同的卡牌,那么

,

,

,

,

,
('+' 表示前后两张卡牌合成) 都会产生一张全新的卡牌,用这些全新的卡牌去合成又会产生一些新的卡牌,对于将要合成的两张卡牌来说,合成的结果与放入顺序无关,

与

合成的结果一样,但是对于一个更高等级的卡牌来说,它由

,

,

,

四张同级卡牌而来,但是由于次级卡牌的合成结果不同最后产生的卡牌也不相同,即

与

不同。
小蓝同学是一个手残党,只要有能合成的卡牌他就会将他们合成,直到所有卡牌之间都不能合成为止。小蓝同学想知道最后他手上剩下的卡牌有多少种可能。只要存在一张卡牌种类或者等级不同则视为不同的结果。该结果可能很大,所以你只需要输出答案对

取模的结果。