works with binary children