still has problem with !DRY and hanging, but better with as.