dddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddadddddddddddddddddddddddddddddddddddaddddddddddddddddddddddddddddddddddda