Prepared for recursive version.