let emission (lst :  Widget.listbox Widget.widget) (sender : string) (message : string) : string =
         let res =ref ("["^message^"]"in
        let l = ref [message] in
        let message_if = transcript_sender message in
        Hashtbl.iter
        (fun (name_in_session,_,type_of_message) b_arg ->
                let b = transcript_sender b_arg in
                if(        b<>""
                        &&(not (List.mem b (!l)))
                        && (sender=name_in_session)
                        && (type_of_message="_message_stack" )
                        && (let rec test_no_recieve_message l_automate =
                                match l_automate with [] -> false
                                                |((name,id,_,actionsL)::ls) -> 
                                                        if(sender=(get_name_in_session name id)) 
                                                        then ( 
                                                                let rec aux l =
                                                                        match l with [] -> false
                                                                                |((initial,_,final)::ll) -> 
                                                                                        if(        message_if=(findIknows final) &&
                                                                                                ""<>(findIknows initial) )
                                                                                        then true
                                                                                        else aux ll;
                                                        in aux actionsL
                                                )
                                                else test_no_recieve_message ls
                                in test_no_recieve_message (!automate)) 
(*                        && not(List.mem true 
                                (List.map
                                        (fun action_lst ->
                                                let (sender_lst, _, message_lst) = actionTreatment action_lst in
                                                (sender_lst=sender && message_lst=b))
                                                (Listbox.get_range lst ~first:(`Num 0) ~last:`End)
                        )) *)

                )
                then (l:=(b::(!l)) ; res:=(!res)^"["^b^"]" ))
        message_stack;
        if((!res)<>""
        then "...Emission"^(replace "_new" "" (!res))^"!!!..."
        else ""