<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def check_adjust(builder, file_o):
 # type: (Builder, Dict[Text, Any]) -> Dict[Text, Any] """ Map files to assigned path inside a container. We need to also explicitly walk over input, as implicit reassignment doesn't reach everything in builder.bindings """


    if not builder.pathmapper:
            raise ValueError("Do not call check_adjust using a builder that doesn't have a pathmapper.")
    file_o["path"] = docker_windows_path_adjust(
        builder.pathmapper.mapper(file_o["location"])[1])
    dn, bn = os.path.split(file_o["path"])
    if file_o.get("dirname") != dn:
        file_o["dirname"] = Text(dn)
    if file_o.get("basename") != bn:
        file_o["basename"] = Text(bn)
    if file_o["class"] == "File":
        nr, ne = os.path.splitext(file_o["basename"])
        if file_o.get("nameroot") != nr:
            file_o["nameroot"] = Text(nr)
        if file_o.get("nameext") != ne:
            file_o["nameext"] = Text(ne)
    if not ACCEPTLIST_RE.match(file_o["basename"]):
        raise WorkflowException(
            "Invalid filename: '{}' contains illegal characters".format(
                file_o["basename"]))
    return file_o