you can add door inside a door
add test to avoir maximum call size, to refactor
add ascendant lock