requirements needed for examples