+ Call empty only if length > 0 during deconstruction