Formatted code to use spaces instead of tabs and added signal classes.