<commit_before>import React from 'react';

class Com11 extends React.Component {
    render() {
        return <com11>Com11</com11>
    };
}
class Com12 extends React.Component {
    render() {
        return <com12>Com12</com12>
    };
}
class Com2 extends React.Component {
    render() {
        return <com2>Com2</com2>
    };
}
class Com1 extends React.Component {
    render() {
        return <com1><h2>Com1</h2><Com11/><Com12/></com1>
    };
}
export default class Com extends React.Component {
      constructor(p){
        super(p);
        this.state = {secondsElapsed:0};
      }
      tick() {
        this.setState({secondsElapsed: this.state.secondsElapsed + 1});
      }
      componentDidMount() {
        this.interval = setInterval(this.tick.bind(this), 100);
      }
      componentWillUnmount(){
        clearInterval(this.interval);
      }
      render(){
        return (
          <div>Seconds Elapsed: {this.state.secondsElapsed}</div>
        );
      }
}
<commit_msg>Added a sample TODO app with events for testing<commit_after>import React from 'react';

var TodoList = React.createClass({
  render: function() {
    var createItem = function(itemText, index) {
      return <li key={index + itemText}>{itemText}</li>;
    };
    return <ul>{this.props.items.map(createItem)}</ul>;
  }
});

var TodoApp = React.createClass({
  getInitialState: function() {
    return {items: [], text: ''};
  },
  onChange: function(e) {
    this.setState({text: e.target.value});
  },
  handleSubmit: function(e) {
    e.preventDefault();
    var nextItems = this.state.items.concat([this.state.text]);
    var nextText = '';
    this.setState({items: nextItems, text: nextText});
  },
  render: function() {
    return (
      <div>
        <h3>TODO</h3>
        <TodoList items={this.state.items} />
        <form onSubmit={this.handleSubmit}>
          <input onChange={this.onChange} value={this.state.text} />
          <button>{'Add #' + (this.state.items.length + 1)}</button>
        </form>
      </div>
    );
  }
});

export default TodoApp;
{'fraction_non_alphanumeric': 0.15730880929332042, 'fraction_numerical': 0.018393030009680542, 'mean_word_length': 2.6199649737302977, 'pattern_counts': {'":': 0, '<': 31, '<?xml version=': 0, '>': 31, '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': '5355585', 'n_tokens_mistral': 673, 'n_tokens_neox': 663, 'n_words': 128}