Further implements fire()