induction n; intuition; simpl in *;
destruct ls; simpl in *; intuition; try omega.
edestruct (ls_last_exists (b :: ls)).
simpl.
eauto.
destruct H0.
intuition.
rewrite H2.
eapply in_or_app.
destruct x; [left | right];
eapply in_map_iff;
econstructor; intuition.
Qed.

Lemma getAllBlists_In_length : forall n ls,
In ls (getAllBlists n) ->
length ls = n.