TODO: generate doop-like variable names