incremental canonical