Instructions: Your task is to come up with a message to the farmers in order to change their behaviour from following the ecological intensification heuristics that benefits solely their farm to following the ecological connectivity heuristics that increase landscape connectivity. Your communication to the farmer can be persuasive. It can provide incentives such as reducing the implementation or maintenance cost of an intervention by providing a one-time subsidy or yearly subsidies. It can compensate the farmers for yield that is lost to habitat conversion. It can communicate the benefits of landscape connectivity, and so on. 

The ecological intensification heuristics the farmer is currently following are:
 ```python
import json

def calculate_interventions(input_file="input.geojson", output_file="output.geojson"):
    """
    Calculates and assigns margin and habitat interventions for agricultural plots based on heuristics.

    Args:
        input_file (str): Path to the input GeoJSON file.
        output_file (str): Path to save the output GeoJSON file.
    """

    crop_prices = {'Soybeans': 370, 'Oats': 95, 'Corn': 190, 'Canola/rapeseed': 1100, 'Barley': 120, 'Spring wheat': 200}
    costs = {'margin': {'implementation': 400, 'maintenance': 60}, 'habitat': {'implementation': 300, 'maintenance': 70}, 'agriculture': {'maintenance': 100}}

    with open(input_file, 'r') as f:
        data = json.load(f)

    for feature in data['features']:
        if feature['properties']['type'] == 'ag_plot':
            # Initialize intervention values
            feature['properties']['margin_intervention'] = 0.0
            feature['properties']['habitat_conversion'] = 0.0

            # Heuristics based on yield and crop type

            yield_value = feature['properties']['yield']
            label = feature['properties']['label']

            # High Yield Threshold
            high_yield_threshold = 2.0

            if yield_value > high_yield_threshold:
                feature['properties']['margin_intervention'] = 1.0 # Apply full margin intervention
            elif label == "Oats":
                  feature['properties']['margin_intervention'] = 0.1
            elif yield_value > 1:
                feature['properties']['margin_intervention'] = 0.75
            else:
                feature['properties']['margin_intervention'] = 0.0 # No intervention for low yield

    with open(output_file, 'w') as f:
        json.dump(data, f, indent=2)

if __name__ == "__main__":
    calculate_interventions()
``` 
The ecological connectivity heuristics that you should nudge them towards are:
 ```python
import json

def predict_interventions(input_geojson_file, output_geojson_file):
    with open(input_geojson_file, 'r') as f:
        input_data = json.load(f)

    output_features = []
    for feature in input_data['features']:
        plot_properties = feature['properties']
        plot_type = plot_properties['type']
        label = plot_properties['label']
        plot_id = plot_properties['id']

        margin_directions = []
        habitat_directions = []

        if plot_type == 'hab_plots':
            habitat_directions = ["north-west", "north-east", "south-west", "south-east"]
        elif plot_type == 'ag_plot':
            if label == 'Soybeans':
                margin_directions = ["north-west", "north-east", "south-west", "south-east"]
            else:
                margin_directions = ["north-east", "south-east"]

        output_features.append({
            "plot_id": plot_id,
            "plot_type": plot_type,
            "label": label,
            "margin_directions": margin_directions,
            "habitat_directions": habitat_directions
        })

    output_json = output_features

    with open(output_geojson_file, 'w') as f:
        json.dump(output_json, f, indent=2)

    return output_json

# Assuming input.geojson is in the same directory
input_file = 'input.geojson'
output_file = 'output.json'
output_predictions = predict_interventions(input_file, output_file)
print(output_predictions)
``` 

The current parameters like prices and costs are: These are the crop prices in USD/Tonne: {'Soybeans': 370, 'Oats': 95, 'Corn': 190, 'Canola/rapeseed': 1100, 'Barley': 120, 'Spring wheat': 200}, and these are the costs (implementation costs one time and in USD/ha, and maintenance costs in USD/ha/year) : {'margin': {'implementation': 400,  'maintenance': 60}, 'habitat': {'implementation': 300, 'maintenance': 70}, 'agriculture': {'maintenance': 100}}.

One caveat is that the ecological connectivity heuristics are given in directions (margin_directions and habitat_directions), where there are 4 possible directions north-west, north-east, south-west, south-east. That means the resulting margin_intervention and habitat_conversion values can only be in multiples of 0.25 - 0.25, 0.5, 0.75, 1. You need to convert the directions to these values. You can ignore the directions after that, and assume that the farmer will use whichever direction you want them to. Your goal should be to communicate a message that gets the farmer to alter the margin_intervention and habitat_conversion values for each of the plots, from the former to the latter.  Your final message to the farmer should be in this format \communication{message}. 

