perimeter method