@mixin type2($type, $sub-property, $screen-n){
    @if($type == 2){
        $list: map-get($sub-property, list);
        $values: map-get($sub-property, values);
        @each $key, $value in $values {
            $status: map-get($value, status);
            $class: map-get($value, class);
            $extension: map-get($value, extension);
            $start: map-get($value, start);
            $end: map-get($value, end);
            $rate: map-get($value, rate);
            $reverse: map-get($value, reverse);
            @for $var from $start through $end {
                @each $list-n, $list-v in $list {
                    $list-vr: if(($var * $rate) == 0, 0, ($var * $rate + $extension));
                    .#{$screen-n}#{$list-n}-#{$var * $rate + $class}{
                       #{$list-v}:#{$list-vr};
                    }
                    @if($reverse == true){
                        .#{$screen-n}-#{$list-n}-#{$var * $rate + $class}{
                            #{$list-v}:-#{$list-vr};
                         }
                    }
                }
            }
        }
    }
}