now extremely verbose