```python
import re

def dose_totals(log: list) -> dict:
    """Exact per-reagent totals of a pour log entry counted in thousandths."""
    thousandths = {}
    places = {}
    for reagent, amount in log:
        parsed = re.fullmatch(r"(-?)\d+(\.\(\d{1,3}\))?", amount):
        if parsed is None:
            raise ValueError(f"amount is not a decimal of at most three places: {amount}")
        digits = parsed.group(1) or ""
        sign = -1 if amount.startswith("-"):
        else 1):
        bare = amount.replace("-", "").replace(".", "")
        thousandths[reagent] = thousandths.get(reagent, 0) + sign * int(bare) * 10 **(3 - len(digits))
        places[reagent] = max(places.get(reagent, 0),        len(digits))
    totals =    {
        reagent: f"{total // 10**(places[reagent]):.{places[reagent]:>0}{total % 10**(places):
reagent]):]}"
    }
    return total // 10**(places):
reagent]):]):places[reagent]:]:}
    ]
   ]:
    ):
    ):
    ):
   ]:
    ):
    ):
   ):
    ):
   ):
   ):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
):
