<commit_before>package EnsEMBL::Web::Text::Feature;

use strict;
use warnings;
no warnings "uninitialized";

sub new {
  return bless {'__raw__'=>$_[1],'__extra__'=>{} },$_[0];
}

sub seqname { my $self = shift; (my $T = ($self->_seqname || '')) =~s/^chr//; return $T; }
sub start   { my $self = shift; return $self->{'start'}; }
sub end     { my $self = shift; return $self->{'end'}; }
sub strand        { return 0; }
sub cigar_string  { return undef; }
sub hstart        { return undef; }
sub hend          { return undef; }
sub hstrand       { return 0; }
sub type          { return undef; }
sub note          { return undef ;}
sub score         { return undef; }  
sub link          { return undef; }  
sub slice         { return undef; }  

sub extra_data { return $_[0]{__extra__}; }

sub coords {
  ## Default parser for raw data - this is the commonest format
  my ($self, $data) = @_;
  (my $chr = $data->[0]) =~ s/chr//;
  return ($chr, $data->[1], $data->[2]);
}

sub id { my $self = shift; return undef; }<commit_msg>Better fix for previous commit (fewer log warnings):<commit_after>package EnsEMBL::Web::Text::Feature;

use strict;
use warnings;
no warnings "uninitialized";

sub new {
  return bless {'__raw__'=>$_[1],'__extra__'=>{} },$_[0];
}

sub _seqname { return ''; } # Override me
sub seqname { my $self = shift; (my $T = ($self->_seqname)) =~s/^chr//; return $T; }
sub start   { my $self = shift; return $self->{'start'}; }
sub end     { my $self = shift; return $self->{'end'}; }
sub strand        { return 0; }
sub cigar_string  { return undef; }
sub hstart        { return undef; }
sub hend          { return undef; }
sub hstrand       { return 0; }
sub type          { return undef; }
sub note          { return undef ;}
sub score         { return undef; }  
sub link          { return undef; }  
sub slice         { return undef; }  

sub extra_data { return $_[0]{__extra__}; }

sub coords {
  ## Default parser for raw data - this is the commonest format
  my ($self, $data) = @_;
  (my $chr = $data->[0]) =~ s/chr//;
  return ($chr, $data->[1], $data->[2]);
}

sub id { my $self = shift; return undef; }
{'fraction_non_alphanumeric': 0.170182841068917, 'fraction_numerical': 0.007501172058134084, 'mean_word_length': 2.7904085257548847, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 19, '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': '1866230', 'n_tokens_mistral': 750, 'n_tokens_neox': 717, 'n_words': 240}