Basic skeleton
Only support []byte and [][]byte