FAYXGKV6PUEUYD7BKKV27RKCIJ44WD4L4ZO5ICC5XD5KK5I7X2LQC RSTSRBUU5TMYSKYBYC3APFOPDMCAPUG4ZLJS2TTAH4EBKAPKB5ZQC UXWFBRYCNZIYOGP6MGMT5KGY6NFS566QDDJJZIP3YJODQI5QIHDAC U3JHTSEMJLXNKOMAQJQPZKRW6GRPHYLG6DK53XVADIETKVCS2MFQC WN26XTZ7IZN4WNAVXZ4NKD4CXIU7IC6V7BFNVICNMQUVHBZXBNCAC 6X6DDDY32EIHOKTZ2PXAE4G7DJGRC46MCQGWNV2EATJUAHHUDSUAC O325HSUUTHFZ2BM23FLJVHZKYV742BLUWCDYSYDMIEAZRU6RRO7AC }PlayerType? getShortcutWinner(int currentDepth, Config config,Node<MoveType, PlayerType?> currentNode) {if (config.nnpv != null &&config.useValueAfterDepth != null &&config.valueThreshold != null) {if (currentDepth > config.useValueAfterDepth!) {double currentValue = config.nnpv!.getValue(currentNode.gameState as GameState<MoveType, PlayerType?>);if (currentValue >= config.valueThreshold!) {return currentNode.gameState!.currentPlayer;}}}return null;