added cameron browne's demo code