I think it is easier to follow if preStart is placed above onReceive