sample app REVISED