- added shield and interrupt logic