def getAnnualIndexMovement(indicator):
    """
    Get the movement of the index (a nx1 DF) for each year desired
    
    Accepts a pd.DataFrame, which is an index
    of economic indicators. 
    
    Note that the column values 'Year' and 'Value' are 
    baked into QUANDL data. Will need to check for changes
    in future. A tripwire fault is added in case the change
    occurs.
    
    Returns either a tuple of pd.DataFrames or an error message.
    
    """
    try:
        # trip wire in case col values change in QUANDL
        assert 'Value' in indicator.columns, 'getIndexMovement() Value column value has changed. Edit function definition and try again..'
        # group the years and get the sum of the differences for each year
        indicator_mvt = indicator.diff(-1)
        # convert index to only year for .get() lookup
        indicator_mvt.index = indicator_mvt.index.year        

    except Exception as e:
        return e
    
    # return a series 
    return indicator_mvt.squeeze()