warnings but otherwise good