Scanf.scanf "%d" (fun n ->
    let nei = Array.make n [] in
    for i = 1 to n - 1 do
        Scanf.scanf " %d %d" (fun x y ->
            let x = x - 1 in let y = y - 1 in
            nei.(x) <- y :: nei.(x);
            nei.(y) <- x :: nei.(y)
        )
    done;

    let count node =
        let rec dfs parent cur =
            1 + List.fold_left (fun acc v ->
                if v = parent then acc else acc lxor dfs cur v) 0 nei.(cur)
        in
        dfs 0 node
    in

    let r = List.fold_left (fun acc l -> acc lxor count l) 0 nei.(0) in
    print_endline @@ if r <> 0 then "Alice" else "Bob"
)