perform_action szkielet + requires