requirement handler