"""Create fact_checker
Generated by Phi-Octopus Eden
2025-11-06 18:48:17.929022
"""

```python
from typing import List, Optional
from dataclasses import dataclass

@dataclass
class Fact:
    statement: str
    is_true: bool = False

def create_fact_checker(statements: List[str]) -> callable:
    """
    Create a fact checker function that evaluates the truthfulness of given statements.

    Args:
        statements (List[str]): A list of statements to be evaluated as facts.

    Returns:
        callable: A function that takes a new statement and returns whether it is true or false based on the provided facts.
    """

    facts = {stmt: Fact(stmt) for stmt in statements}

    def check_statement(new_statement: str) -> Optional[bool]:
        """
        Check if the new statement matches any of the provided facts.

        Args:
            new_statement (str): The new statement to be checked against existing facts.

        Returns:
            Optional[bool]: True if the statement is true, False if it is false, or None if no match is found.
        """
        for fact in facts.values():
            if fact.statement == new_statement:
                return fact.is_true
        return None

    return check_statement


# Example usage:
if __name__ == "__main__":
    fact_checker = create_fact_checker([
        "The sky is blue",
        "Water boils at 100 degrees Celsius"
    ])

    print(fact_checker("The sky is blue"))  # Output: True
    print(fact_checker("Water freezes at 0 degrees Fahrenheit"))  # Output: None
    print(fact_checker("Plants need sunlight to grow"))  # Output: None

```