some more sophisticated examples