This is derived from the MSL Limiter but avoidong noEvent and smooth (which allows the tool to avoid events wehn limits are reached). Additionally a warning is uttered when limits are exceeded.
noEvent
smooth