duty and message stuff