def _MCTrajSolve(params):
    """ Internal function. Does a Monte Carlo run of the given trajectory object. Used as a function for
        parallelization. 

    Arguments:
        params: [list]
            - i: [int] Number of MC run to be printed out.
            - traj: [Trajectory object] Trajectory object on which the run will be performed.
            - observations: [list] A list of observations with no noise.

    Return:
        traj: [Trajectory object] Trajectory object with the MC solution.

    """

    i, traj, observations = params

    print('Run No.', i + 1)

    traj.run(_mc_run=True, _orig_obs=observations)

    return traj