add source and example