Initial implementation and example