fixing bug in which meant e1 didnt fill and adding standalone spike function