#!/usr/bin/perl

# Hysteretic effect on bend sensor:
# Mid point 160...
# "High" 180
# "Low" 120

$|=1;
$regime = 0;
@region = ();

$mid = 160;
$high = 180;
$low = 120;

$last = 0;


while(<>){
    split;
    $ct++;
    print STDERR "Regime $regime\n";
#    print $regime, "\n";
    $v = $_[2];
    if($regime == -1){
	if($v > $mid){
	    $offset = &find_low(@region);
	    $now = ($ct-$offset);
	    print $now-$last, "\n";
	    $last = $now;
	    $regime = 0;
	    @region = ();
	}
	else{
	    push(@region, $v);
	}
    }
    elsif($regime == 0){
	if($v > $high){
	    $regime = 1;
	}
	elsif($v < $low){
	    $regime = -1;
	}
    }
    elsif($regime == 1){
	if($v < $mid){
	    $offset = &find_high(@region);
	    $now = ($ct-$offset);
	    print $now-$last, "\n";
	    $last = $now;
	    $regime = 0;
	    @region = ();
	}
	else{
	    push(@region, $v);
	}
    }
}

sub find_low {
    @vals = @_;
    $min = 255;
    $which = 0;
    $cur = 0;
    foreach $val (@vals){
	if($val < $min){
	    $which = $cur;
	    $min = $val;
	}
	$cur++;
    }
    return ($#vals-$which+1);
}

sub find_high {
    @vals = @_;
    $max = 0;
    $which = 0;
    $cur = 0;
    foreach $val (@vals){
	if($val > $max){
	    $which = $cur;
	    $max = $val;
	}
	$cur++;
    }
    return ($#vals-$which+1);
}
