- passed = Position::pawn_is_passed(theirPawns, Us, s);
- isolated = Position::pawn_is_isolated(ourPawns, s);
- doubled = Position::pawn_is_doubled(ourPawns, Us, s);
+ passed = !(theirPawns & passed_pawn_mask(Us, s));
+ isolated = !(ourPawns & neighboring_files_bb(s));
+ doubled = ourPawns & squares_behind(Us, s);
+ opposed = theirPawns & squares_in_front_of(Us, s);