add some behavior patterns