insert method implemented