avoid allocate ==>>.Tip object