The performance of ttlv.Marshal and ttlv.Unmarshal is not high. Can we optimize them, such as adding cache to struct