global logic