event driven fixes