examples, removing useless, maybe final api