use direct pointer access