changed working memory to chain backwards becuase about to implement ring buffer due to memory limitations