terminal decision function