// Copyright 2014 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Pprof interprets and displays profiles of Go programs.
//
// Basic usage:
//
//	go tool pprof binary profile
//
// For detailed usage information:
//
//  go tool pprof -h
//
// For an example, see https://blog.golang.org/profiling-go-programs.
package main
