started work on fixing the volatile / non-volatile problem