porting with str_size_and_int64 take 2