implement get reference