implementing turn methods