<commit_before>import "Adjudicator.sol";
import "LockedState.sol";

contract Rules {

    event StateChannelCreated(address Adjudicator, address LockedState);

    Adjudicator adjudicator;

    function Rules() {
        adjudicator = createAdjudicator();
        StateChannelCreated(adjudicator, adjudicator.getLockedStateAddress());
    }

    function createAdjudicator() internal returns (Adjudicator);

    // you may define the rules and exposure conditions of the state channel
    // in a subcontract that inherits from this contract
}<commit_msg>Added comments for Rules.sol<commit_after>import "Adjudicator.sol";
import "LockedState.sol";

/**
 * Rules
 *
 * The rules of the state channel. Will be further implemented by any inheriting contracts.
 */
contract Rules {

    // Event triggered when a new state channel is created (this contract is initialised)
    event StateChannelCreated(address Adjudicator, address LockedState);

    Adjudicator adjudicator;

    // Creates a new Rules
    function Rules() {
        adjudicator = createAdjudicator();
        StateChannelCreated(adjudicator, adjudicator.getLockedStateAddress());
    }

    // An abstract method which create and return an Adjudicator. The Adjudicator will be owned by this contract.
    function createAdjudicator() internal returns (Adjudicator);

    // you may define the rules and exposure conditions of the state channel
    // in a subcontract that inherits from this contract
}
{'fraction_non_alphanumeric': 0.07152588555858311, 'fraction_numerical': 0.0, 'mean_word_length': 3.8322368421052633, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2340562', 'n_tokens_mistral': 374, 'n_tokens_neox': 360, 'n_words': 140}