implemented trivial api