def METHOD_NAME(self, X, engine, gc, dc):
    X += 0.02 * np.sign(X)
    X[X == 0.0] += 0.02
    output = Functional.Relu(X, device_option=gc)
    Y_l = output[0]
    Y_d = output["output_0"]
    with workspace.WorkspaceGuard("tmp_workspace"):
        op = core.CreateOperator("Relu", ["X"], ["Y"], engine=engine)
        workspace.FeedBlob("X", X)
        workspace.RunOperatorOnce(op)
        Y_ref = workspace.FetchBlob("Y")
    np.testing.assert_array_equal(
        Y_l, Y_ref, err_msg='Functional Relu result mismatch'
    )
    np.testing.assert_array_equal(
        Y_d, Y_ref, err_msg='Functional Relu result mismatch'
    )