implemented triggers