some pointer tricks