log prototype