Base changed, take into account special case p=q
Ending boundary update to match the changes done on interval function
Can work on system including concurrency