We’ve worked with Genoa and Copenhagen Municipalities on building permit process and have found a pattern where a deadline is put on hold while awaiting information from the applicant.
Below we outline a graph where the municipality receives a request. Once received they have 60 days to provide an answers regarding the permit.

However, if information is missing the municipality can ask the applicant (proprietary) for more information.
When the applicant sends information to the municipality the clock is set again using the time expression:
P60D – (clockStart – clockStop)
The two Robot events, clockStart and clockStop, are computational events. Their value contain the time they were executed:

The expression now evaluates to the datetime the activity was executed.
When we simulate the graph we assign Robot to the Lazy user. We start the simulation on November 1st.

When the request is received a deadline is set 60 days in the future.

A week passes and then the municipality find out that the applicant needs to send some additional information. The municipality therefore executes the event asks to the proprietary for other data. A week passes awaiting the applicant (proprietary).

The the applicant (proprietary) sends the data to the municipality:

As the municipality was waiting the applicant (proprietary) for 7 days the new deadline is now the old plus the 7 days, i.e. January 7th, 2020.
The two robotic events is really not needed and clockStop and clockStart events could have been the “asks the proprietary for other data” and “sends to the municipality additional data”.
