generate(avl_tree(Options),Value) :-
is_list(Options) ,
generate(avl_tree(any([]),Options),Value).
generate(avl_tree(Type),Value) :-
generate(avl_tree(Type,[]),Value).
generate(avl_tree(Type,Options),AVL) :-
(member(size:Size,Options)
-> Size >= 0
; random(1,50,Size)) ,
length(Value,Size),
maplist(generate(Type),Value),
findall(Key-true,member(Key,Value),Pairs),
list_to_avl(Pairs,AVL).