@classmethod
    def from_input(cls, input_file=sys.stdin, modify=None, backend=None):

        # Detect the hook type if not given directly
        name = os.path.basename(sys.argv[0])
        modify = name.startswith('on-modify') if modify is None else modify

        # Create the TaskWarrior instance if none passed
        if backend is None:
            backends = importlib.import_module('tasklib.backends')
            hook_parent_dir = os.path.dirname(os.path.dirname(sys.argv[0]))
            backend = backends.TaskWarrior(data_location=hook_parent_dir)

        # TaskWarrior instance is set to None
        task = cls(backend)

        # Load the data from the input
        task._load_data(json.loads(input_file.readline().strip()))

        # If this is a on-modify event, we are provided with additional
        # line of input, which provides updated data
        if modify:
            task._update_data(json.loads(input_file.readline().strip()),
                              remove_missing=True)

        return task
Add the two raw mpf values s and t.
dataset/ETHPy150Open robgolding63/tasklib/tasklib/task.py/Task.from_input--crossover with--dataset/ETHPy150Open fredrik-johansson/mpmath/mpmath/libmp/libmpf.py/mpf_add