blob: fa968be41b72fc17f3d412a11408bd3a3b8ef804 [file] [log] [blame]
!<arch>
__.PKGDEF 0 0 0 644 18165 `
go object windows amd64 go1.5.1 X:none
build id "a00e7189ec6ba336eb3f471431b40ad45e9a1c68"
$$
package dsa
import runtime "runtime"
import errors "errors"
import io "io"
import big "math/big"
type @"math/big".Word uintptr
type @"math/big".divisor struct { @"math/big".bbb @"math/big".nat; @"math/big".nbits int; @"math/big".ndigits int }
import rand "math/rand" // indirect
type @"math/rand".Source interface { Int63() (? int64); Seed(@"math/rand".seed int64) }
type @"math/rand".Rand struct { @"math/rand".src @"math/rand".Source }
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") ExpFloat64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Float32 () (? float32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Float64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int () (? int)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int31 () (? int32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int31n (@"math/rand".n·3 int32) (? int32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int63 () (? int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int63n (@"math/rand".n·3 int64) (? int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Intn (@"math/rand".n·3 int) (? int)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") NormFloat64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Perm (@"math/rand".n·3 int) (? []int)
func (@"math/rand".r·1 *@"math/rand".Rand "esc:0x9") Seed (@"math/rand".seed·2 int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Uint32 () (? uint32)
type @"io".ByteScanner interface { ReadByte() (@"io".c byte, @"io".err error); UnreadByte() (? error) }
type @"math/big".nat []@"math/big".Word
func (@"math/big".z·2 @"math/big".nat) @"math/big".add (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".and (@"math/big".x·3 @"math/big".nat "esc:0x1", @"math/big".y·4 @"math/big".nat "esc:0x1") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".andNot (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x1") (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".bit (@"math/big".i·3 uint) (? uint) { var @"math/big".j·4 uint; ; @"math/big".j·4 = @"math/big".i·3 / 0x40; if @"math/big".j·4 >= uint(len(@"math/big".x·2)) { return 0x0 }; return uint(@"math/big".x·2[@"math/big".j·4] >> (@"math/big".i·3 % 0x40) & @"math/big".Word(0x1)) }
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".bitLen () (? int)
func (@"math/big".z·2 @"math/big".nat "esc:0x1") @"math/big".bytes (@"math/big".buf·3 []byte "esc:0x1") (@"math/big".i·1 int)
func (@"math/big".z·1 @"math/big".nat "esc:0x1") @"math/big".clear ()
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".cmp (@"math/big".y·3 @"math/big".nat "esc:0x1") (@"math/big".r·1 int)
func (@"math/big".q·1 @"math/big".nat) @"math/big".convertWords (@"math/big".s·2 []byte "esc:0x1", @"math/big".charset·3 string "esc:0x1", @"math/big".b·4 @"math/big".Word, @"math/big".ndigits·5 int, @"math/big".bb·6 @"math/big".Word, @"math/big".table·7 []@"math/big".divisor "esc:0x9")
func (@"math/big".x·2 @"math/big".nat "esc:0x9") @"math/big".decimalString () (? string)
func (@"math/big".z·3 @"math/big".nat) @"math/big".div (@"math/big".z2·4 @"math/big".nat, @"math/big".u·5 @"math/big".nat, @"math/big".v·6 @"math/big".nat) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".nat)
func (@"math/big".z·3 @"math/big".nat "esc:0x12") @"math/big".divLarge (@"math/big".u·4 @"math/big".nat, @"math/big".uIn·5 @"math/big".nat, @"math/big".v·6 @"math/big".nat) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".nat)
func (@"math/big".z·3 @"math/big".nat) @"math/big".divW (@"math/big".x·4 @"math/big".nat, @"math/big".y·5 @"math/big".Word) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".Word)
func (@"math/big".z·2 @"math/big".nat) @"math/big".expNN (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".expNNMontgomery (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".expNNWindowed (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".expWW (@"math/big".x·3 @"math/big".Word, @"math/big".y·4 @"math/big".Word) (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat "esc:0x9") @"math/big".hexString () (? string)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".make (@"math/big".n·3 int) (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat) @"math/big".modW (@"math/big".d·3 @"math/big".Word) (@"math/big".r·1 @"math/big".Word)
func (@"math/big".z·2 @"math/big".nat) @"math/big".montgomery (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"math/big".m·5 @"math/big".nat, @"math/big".k·6 @"math/big".Word, @"math/big".n·7 int) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".mul (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".mulAddWW (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".Word, @"math/big".r·5 @"math/big".Word) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".mulRange (@"math/big".a·3 uint64, @"math/big".b·4 uint64) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".norm () (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".or (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x9") (? @"math/big".nat)
func (@"math/big".n·2 @"math/big".nat) @"math/big".probablyPrime (@"math/big".reps·3 int) (? bool)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".random (@"math/big".rand·3 *@"math/rand".Rand "esc:0x9", @"math/big".limit·4 @"math/big".nat "esc:0x1", @"math/big".n·5 int) (? @"math/big".nat)
func (@"math/big".z·5 @"math/big".nat) @"math/big".scan (@"math/big".r·6 @"io".ByteScanner, @"math/big".base·7 int, @"math/big".fracOk·8 bool) (@"math/big".res·1 @"math/big".nat, @"math/big".b·2 int, @"math/big".count·3 int, @"math/big".err·4 error)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".set (@"math/big".x·3 @"math/big".nat "esc:0x9") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setBit (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".i·4 uint, @"math/big".b·5 uint) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setBytes (@"math/big".buf·3 []byte "esc:0x1") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setUint64 (@"math/big".x·3 uint64) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setWord (@"math/big".x·3 @"math/big".Word) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".shl (@"math/big".x·3 @"math/big".nat, @"math/big".s·4 uint) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".shr (@"math/big".x·3 @"math/big".nat, @"math/big".s·4 uint) (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".sticky (@"math/big".i·3 uint) (? uint)
func (@"math/big".x·2 @"math/big".nat "esc:0x9") @"math/big".string (@"math/big".charset·3 string "esc:0x1") (? string)
func (@"math/big".z·2 @"math/big".nat) @"math/big".sub (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".trailingZeroBits () (? uint)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".xor (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x9") (? @"math/big".nat)
import fmt "fmt" // indirect
type @"fmt".State interface { Flag(@"fmt".c int) (? bool); Precision() (@"fmt".prec int, @"fmt".ok bool); Width() (@"fmt".wid int, @"fmt".ok bool); Write(@"fmt".b []byte) (@"fmt".ret int, @"fmt".err error) }
type @"fmt".ScanState interface { Read(@"fmt".buf []byte) (@"fmt".n int, @"fmt".err error); ReadRune() (@"fmt".r rune, @"fmt".size int, @"fmt".err error); SkipSpace(); Token(@"fmt".skipSpace bool, @"fmt".f func(? rune) (? bool)) (@"fmt".token []byte, @"fmt".err error); UnreadRune() (? error); Width() (@"fmt".wid int, @"fmt".ok bool) }
type @"math/big".Int struct { @"math/big".neg bool; @"math/big".abs @"math/big".nat }
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Abs (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Add (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") And (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") AndNot (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Binomial (@"math/big".n·3 int64, @"math/big".k·4 int64) (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") Bit (@"math/big".i·3 int) (? uint)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") BitLen () (? int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x22") Bits () (? []@"math/big".Word) { return @"math/big".x·2.@"math/big".abs }
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Bytes () (? []byte)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Cmp (@"math/big".y·3 *@"math/big".Int "esc:0x1") (@"math/big".r·1 int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Div (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") DivMod (@"math/big".x·4 *@"math/big".Int "esc:0x9", @"math/big".y·5 *@"math/big".Int "esc:0x9", @"math/big".m·6 *@"math/big".Int "esc:0x8a") (? *@"math/big".Int, ? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Exp (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x1", @"math/big".m·5 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·1 *@"math/big".Int "esc:0x9") Format (@"math/big".s·2 @"fmt".State, @"math/big".ch·3 rune)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") GCD (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9", @"math/big".a·5 *@"math/big".Int "esc:0x9", @"math/big".b·6 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") GobDecode (@"math/big".buf·3 []byte "esc:0x1") (? error)
func (@"math/big".x·3 *@"math/big".Int "esc:0x1") GobEncode () (? []byte, ? error)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Int64 () (? int64) { var @"math/big".v·3 int64; ; @"math/big".v·3 = int64(@"math/big".low64(@"math/big".x·2.@"math/big".abs)); if @"math/big".x·2.@"math/big".neg { @"math/big".v·3 = -@"math/big".v·3 }; return @"math/big".v·3 }
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Lsh (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 uint) (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x9") MarshalJSON () (? []byte, ? error)
func (@"math/big".z·3 *@"math/big".Int "esc:0x9") MarshalText () (@"math/big".text·1 []byte, @"math/big".err·2 error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Mod (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") ModInverse (@"math/big".g·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") ModSqrt (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".p·4 *@"math/big".Int) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Mul (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") MulRange (@"math/big".a·3 int64, @"math/big".b·4 int64) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Neg (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Not (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Or (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") ProbablyPrime (@"math/big".n·3 int) (? bool)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Quo (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") QuoRem (@"math/big".x·4 *@"math/big".Int "esc:0x9", @"math/big".y·5 *@"math/big".Int "esc:0x9", @"math/big".r·6 *@"math/big".Int "esc:0x8a") (? *@"math/big".Int, ? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rand (@"math/big".rnd·3 *@"math/rand".Rand "esc:0x9", @"math/big".n·4 *@"math/big".Int "esc:0x1") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rem (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rsh (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 uint) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") Scan (@"math/big".s·3 @"fmt".ScanState, @"math/big".ch·4 rune) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Set (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetBit (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".i·4 int, @"math/big".b·5 uint) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x12") SetBits (@"math/big".abs·3 []@"math/big".Word) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetBytes (@"math/big".buf·3 []byte "esc:0x1") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetInt64 (@"math/big".x·3 int64) (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") SetString (@"math/big".s·4 string, @"math/big".base·5 int) (? *@"math/big".Int, ? bool)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetUint64 (@"math/big".x·3 uint64) (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Sign () (? int) { if len(@"math/big".x·2.@"math/big".abs) == 0x0 { return 0x0 }; if @"math/big".x·2.@"math/big".neg { return -0x1 }; return 0x1 }
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") String () (? string)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Sub (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Uint64 () (? uint64) { return @"math/big".low64(@"math/big".x·2.@"math/big".abs) }
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") UnmarshalJSON (@"math/big".text·3 []byte) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") UnmarshalText (@"math/big".text·3 []byte) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Xor (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") @"math/big".binaryGCD (@"math/big".a·3 *@"math/big".Int "esc:0x9", @"math/big".b·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·4 *@"math/big".Int "esc:0x1a") @"math/big".scan (@"math/big".r·5 @"io".ByteScanner, @"math/big".base·6 int) (? *@"math/big".Int, ? int, ? error)
type @"".Parameters struct { P *@"math/big".Int; Q *@"math/big".Int; G *@"math/big".Int }
type @"".PublicKey struct { ? @"".Parameters; Y *@"math/big".Int }
type @"".PrivateKey struct { ? @"".PublicKey; X *@"math/big".Int }
var @"".ErrInvalidPublicKey error
type @"".ParameterSizes int
const @"".L1024N160 @"".ParameterSizes = 0x0
const @"".L2048N224 @"".ParameterSizes = 0x1
const @"".L2048N256 @"".ParameterSizes = 0x2
const @"".L3072N256 @"".ParameterSizes = 0x3
type @"io".Reader interface { Read(@"io".p []byte) (@"io".n int, @"io".err error) }
func @"".GenerateParameters (@"".params·2 *@"".Parameters "esc:0x1", @"".rand·3 @"io".Reader, @"".sizes·4 @"".ParameterSizes) (@"".err·1 error)
func @"".GenerateKey (@"".priv·2 *@"".PrivateKey "esc:0x9", @"".rand·3 @"io".Reader) (? error)
func @"".Sign (@"".rand·4 @"io".Reader, @"".priv·5 *@"".PrivateKey "esc:0x9", @"".hash·6 []byte "esc:0x1") (@"".r·1 *@"math/big".Int, @"".s·2 *@"math/big".Int, @"".err·3 error)
func @"".Verify (@"".pub·2 *@"".PublicKey "esc:0x9", @"".hash·3 []byte "esc:0x1", @"".r·4 *@"math/big".Int "esc:0x9", @"".s·5 *@"math/big".Int "esc:0x9") (? bool)
func @"".init ()
func @"math/big".low64 (@"math/big".z·2 @"math/big".nat "esc:0x1") (? uint64) { if len(@"math/big".z·2) == 0x0 { return 0x0 }; var @"math/big".v·3 uint64; ; @"math/big".v·3 = uint64(@"math/big".z·2[0x0]); if false && len(@"math/big".z·2) > 0x1 { @"math/big".v·3 |= uint64(@"math/big".z·2[0x1]) << 0x20 }; return @"math/big".v·3 }
$$
�_go_.o 0 0 0 644 30729 `
go object windows amd64 go1.5.1 X:none
!
��go13lderrors.aio.amath/big.a�þ*"".GenerateParameters��€*��ê)eH‹ %(���H‹‰����H„$àþÿÿH;A†I
��Hì ��H‹œ$ ��H‰$è����1Û1ÛH‰œ$È��H‰œ$Ð��H‹„$À��HƒøÑ ��Hƒø�…ˆ��HÇD$X���HÇÀ ���H‰ÃHÁû?HÁë=HÃHÁûH‰ØH����H‰$H‰D$H‰D$è����H‹t$XH‹T$H‹L$ H‹D$(H‰”$Ð���H‰Œ$Ø���H‰„$à���H‰ðHÁø?HÁè=HðHÁøH����H‰$H‰D$H‰D$è����H‹T$H‹L$ H‹D$(H‰”$è���H‰Œ$ð���H‰„$ø���H����H‰$è����H‹\$H‰\$hH����H‰$è����H‹\$H‰\$p1ۈœ$€��H‰œ$ˆ��H‰œ$��H‰œ$˜��Hœ$€��H‰\$`1Àˆ„$`��H‰„$h��H‰„$p��H‰„$x��H„$`��H‰D$xH‰$HÇD$���è����H‹œ$°��H‰$H‹œ$¸��H‰\$H‹œ$Ð���H‰\$H‹œ$Ø���H‰\$H‹œ$à���H‰\$ è����H‹”$Ø���H‹D$0H‹L$8H‰Œ$Ð��H‰„$È��Hƒø�t è����HÄ ��ÃH‰ÐHÿÈH‹œ$Ð���H‰D$PH9Ѓ‹��HH‰$è����H‹”$Ð���H‹Œ$Ø���H‹D$PH9ȃY��H¶+@ˆl$GH9ȃ=��HH‰$è����H‹Œ$Ð���H‹„$Ø���H‹l$PH9Ń ��H)¶l$GHƒÍ@ˆ+Hƒø�†ê��H‰ $è����H‹Œ$Ð���H‹„$Ø���Hƒø�†À��¶)@ˆl$GHƒø�†§��H‰ $è����H‹Œ$Ð���H‹„$Ø���Hƒø�†}��¶l$GHÍ€���@ˆ)H‹\$hH‰$H‰L$H‰D$H‹œ$à���H‰\$è����H‹\$hH‰$HÇD$@���è����¶\$€û�ué3þÿÿ1ÀH‹\$XHÁãH‰D$HH9ÃŽþÿÿH‹œ$°��H‰$H‹œ$¸��H‰\$H‹œ$è���H‰\$H‹œ$ð���H‰\$H‹œ$ø���H‰\$ è����H‹”$ð���H‹D$0H‹L$8H‰Œ$Ð��H‰„$È��Hƒø�t è����HÄ ��ÃH‰ÐHÿÈH‹œ$è���H‰D$PH9Ѓm��HH‰$è����H‹”$è���H‹Œ$ð���H‹D$PH9ȃ;��H¶+@ˆl$GH9ȃ��HH‰$è����H‹Œ$è���H‹„$ð���H‹l$PH9Ńí��H)¶l$GHƒÍ@ˆ+Hƒø�†Ì��H‰ $è����H‹Œ$è���H‹„$ð���Hƒø�†¢��¶)@ˆl$GHƒø�†‰��H‰ $è����H‹Œ$è���H‹„$ð���Hƒø�†_��¶l$GHÍ€���@ˆ)H‹\$pH‰$H‰L$H‰D$H‹œ$ø���H‰\$è����H‹\$`H‰$H‹\$pH‰\$H‹\$hH‰\$è����H‹D$`H‰$H‰D$H‹\$xH‰\$è����H‹D$pH‰$H‰D$H‹\$`H‰\$è����H‹\$pH‰$è����H‹\$H‹l$XH9ë} H‹D$HHÿÀé¼ýÿÿH‹\$pH‰$HÇD$@���è����¶\$€û�uëÐH‹œ$¨��H‰$è����H‹œ$¨��Hƒû�„X��H‹l$p€=�����…3��H‰+H‹œ$¨��H‰$Hƒ$è����H‹œ$¨��Hƒû�„��H‹l$h€=�����…Ø��H‰k1Àˆ„$@��H‰„$H��H‰„$P��H‰„$X��H„$@��H‰„$€���H‰$HÇD$���è����H����H‰$è����H‹\$H‰œ$ˆ���1ۈœ$ ��H‰œ$(��H‰œ$0��H‰œ$8��Hœ$ ��H‰$H‹\$pH‰\$H‹\$xH‰\$è����H‹D$1ۈœ$���H‰œ$��H‰œ$��H‰œ$��Hœ$���H‰$H‰D$H‹\$hH‰\$è����H‹\$H‰œ$���H‹œ$ˆ���H‰$H‹œ$€���H‰\$H‹œ$���H‰\$H‹\$pH‰\$è����H‹œ$ˆ���H‰$H‹\$xH‰\$è����H‹Œ$€���H‹\$Hƒû�uH‰ $H‰L$H‹\$xH‰\$è����ëƒH‹œ$¨��H‰$Hƒ$è����H‹œ$¨��Hƒû�t6H‹¬$ˆ���€=�����uH‰kè����HÄ ��ÃLCL‰$H‰l$è����ë߉ëÆLCL‰$H‰l$è����éþÿÿ‰éøýÿÿH‰$H‰l$è����é½ýÿÿ‰é¡ýÿÿè���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� è���� HƒøuHÇD$X���HÇÀà���ém÷ÿÿH����H‰œ$°���HDŽ$¸���"���1ÛH‰œ$ ���H‰œ$¨���H����H‰$è����H‹D$H‰„$˜���H‰$è����H‹œ$˜���H‹¬$¸���H‰kH‹¬$°���€=�����…•���H‰+H‹œ$˜���H‰œ$˜���H‹����1íH9ètEH‹Œ$˜���H‰„$À���H‰Œ$È���H‰„$ ���H‰„$È��H‰Œ$¨���H‰Œ$Ð��è����HÄ ��ÃH����H‰$H����H‰\$H����H‰\$è����H‹D$ëŒH‰$H‰l$è����é[ÿÿÿHƒøuHÇD$X���HÇÀ���é.öÿÿHƒø…·þÿÿHÇD$X� ��HÇÀ���éöÿÿè����é‹õÿÿœ������l
��*runtime.racefuncenter���¤��type.[]uint8���Ê
��"runtime.makeslice���Ô��type.[]uint8���ú
��"runtime.makeslice���Ö��"type.math/big.Int���è
��"runtime.newobject���Š��"type.math/big.Int���œ
��"runtime.newobject���Œ
��0math/big.(*Int).SetInt64���–
��io.ReadFull���ð
��(runtime.racefuncexit���Ò 
�� runtime.raceread���Ò

��"runtime.racewrite���Ô 
�� runtime.raceread���¾ 
��"runtime.racewrite���Ú 
��0math/big.(*Int).SetBytes���ˆ
��:math/big.(*Int).ProbablyPrime���â
��io.ReadFull���¼
��(runtime.racefuncexit���ž
�� runtime.raceread���ž
��"runtime.racewrite��� 
�� runtime.raceread���Š
��"runtime.racewrite���¦
��0math/big.(*Int).SetBytes���ê
��&math/big.(*Int).Mod���¤
��&math/big.(*Int).Sub���Þ
��&math/big.(*Int).Sub���ú
��,math/big.(*Int).BitLen���à
��:math/big.(*Int).ProbablyPrime���š
��"runtime.racewrite���Ô�6runtime.writeBarrierEnabled���”
��"runtime.racewrite���Î�6runtime.writeBarrierEnabled���ê
��0math/big.(*Int).SetInt64���ø��"type.math/big.Int���Š
��"runtime.newobject���°
��&math/big.(*Int).Sub���¼
��&math/big.(*Int).Div�����&math/big.(*Int).Exp���ö
��&math/big.(*Int).Cmp���Ì
��&math/big.(*Int).Add���ü
��"runtime.racewrite���´ �6runtime.writeBarrierEnabled���Ì 
��(runtime.racefuncexit���€!
��.runtime.writebarrierptr���°!
��.runtime.writebarrierptr���ä!
��.runtime.writebarrierptr���†"
��$runtime.panicindex���”"
��$runtime.panicindex���¢"
��$runtime.panicindex���°"
��$runtime.panicindex���¾"
��$runtime.panicindex���Ì"
��$runtime.panicindex���Ú"
��$runtime.panicindex���è"
��$runtime.panicindex���ö"
��$runtime.panicindex���„#
��$runtime.panicindex���’#
��$runtime.panicindex��� #
��$runtime.panicindex���®#
��$runtime.panicindex���¼#
��$runtime.panicindex���Ê#
��$runtime.panicindex���Ø#
��$runtime.panicindex��� $��\go.string."crypto/dsa: invalid ParameterSizes"���ú$��.type.errors.errorString���Œ%
��"runtime.newobject���¸%
��"runtime.racewrite���ü%�6runtime.writeBarrierEnabled���¾&��Bgo.itab.*errors.errorString.error���Æ'
��(runtime.racefuncexit���ä'��0type.*errors.errorString���ú'��type.error���’(��Bgo.itab.*errors.errorString.error���¦(
�� runtime.typ2Itab���Ð(
��.runtime.writebarrierptr���Ø)
��0runtime.morestack_noctxt���`À��b"".autotmp_0038�¿"type.math/big.Int�"".autotmp_0037�ÿ"type.math/big.Int�"".autotmp_0036�¿"type.math/big.Int�"".autotmp_0035�"type.math/big.Int�"".autotmp_0034�?"type.math/big.Int�"".autotmp_0033��type.int�"".autotmp_0030�¿type.error�"".autotmp_0029�0type.*errors.errorString�"".autotmp_0027��type.int�"".autotmp_0026��$type.*math/big.Int�"".autotmp_0025��$type.*math/big.Int�"".autotmp_0023��$type.*math/big.Int�"".autotmp_0022��$type.*math/big.Int�"".autotmp_0021��$type.*math/big.Int�"".autotmp_0020��type.int�"".autotmp_0019��type.bool�"".autotmp_0018��type.int�"".autotmp_0017��type.uint8�"".autotmp_0016��type.uint8�"".autotmp_0015��type.int�"".autotmp_0014��type.int�"".autotmp_0013��type.error�"".autotmp_0011��type.uint8�"".autotmp_0010�±type.uint8�"".autotmp_0009�Ÿtype.int�"".autotmp_0008��type.int�"".autotmp_0007��type.error�"".autotmp_0006��$type.*math/big.Int�"".autotmp_0005��$type.*math/big.Int�"".autotmp_0004��$type.*math/big.Int�"".autotmp_0002��type.[]uint8�"".autotmp_0000��0type.*errors.errorString� "".~r0�ÿtype.error�errors.text·2�ßtype.string�"".e�Ÿ$type.*math/big.Int�"".g�¯$type.*math/big.Int�"".h�¿$type.*math/big.Int�"".i�¯type.int� "".one�Ï$type.*math/big.Int� "".rem�ÿ$type.*math/big.Int�"".p�ß$type.*math/big.Int�"".q�ï$type.*math/big.Int�"".pBytes�ïtype.[]uint8�"".qBytes�Ÿtype.[]uint8�"".L�type.int� "".err�@type.error�"".sizes�0,type."".ParameterSizes�"".rand�type.io.Reader�"".params��&type.*"".Parameters�F)Àš¿Àå¿À‡¿À¼¿À‘�€�Ðp)´³
 [S.)_li—q%!_PM—q%' "!!*8>
)KN5. 9 %
 9 ÕŠ‰J  
 
/�j�5Ç7xr1µ1¾¨cFB^(2 +Ç0n�Tgclocals·b55a096c2daa7266c7e1e76154dffc99�Tgclocals·2922043522cb5ba2958c6963b259877d���FC:/workdir/go/src/crypto/dsa/dsa.goþ"".GenerateKey��à��ÊeH‹ %(���H‹‰����HD$ÈH;A†ü��Hì¸���H‹œ$¸���H‰$è����1ÛH‰œ$Ø���H‰œ$à���H‹œ$À���H‰$è����H‹„$À���H‹1íH9ë„®��H‰$Hƒ$è����H‹„$À���H‹X1íH9넉��H‰$Hƒ$è����H‹¬$À���H‹]1íH9ë„d��H����H‰$è����H‹\$H‰\$HH‹œ$À���H‰$Hƒ$è����H‹œ$À���H‹kH‰,$è����H‹\$H‰ØHÁû?HÁë=HÃHÁûH‰ØH����H‰$H‰D$H‰D$è����H‹T$H‹L$ H‹D$(H‰”$ ���H‰Œ$¨���H‰„$°���H‹œ$È���H‰$H‹œ$Ð���H‰\$H‹œ$ ���H‰\$H‹œ$¨���H‰\$H‹œ$°���H‰\$ è����H‹D$0H‹L$8H‰Œ$ˆ���H‰„$€���Hƒø�tH‰„$Ø���H‰Œ$à���è����HÄ¸���ÃH‹\$HH‰$H‹œ$ ���H‰\$H‹œ$¨���H‰\$H‹œ$°���H‰\$è����H‹D$HH‰D$@H‰$Hƒ$è����H‹L$@H‹iHƒý�…³��1ÀHƒø�„¢��H‹œ$À���H‰$Hƒ$è����H‹\$HH‰$H‹œ$À���H‹kH‰l$è����H‹\$Hƒû�^��H‹œ$À���H‰$Hƒ$ è����H‹œ$À���Hƒû�„/��H‹l$H€=�����…��H‰k H����H‰$è����H‹\$H‰\$XH‹œ$À���H‰$Hƒ$è����H‹œ$À���Hƒû�„¹���H‹l$X€=�����…���H‰kH‹œ$À���H‰$Hƒ$è����H‹œ$À���H‰$Hƒ$è����H‹œ$À���H‰$è����H‹„$À���H‹hH‰,$H‹hH‰l$H‹\$HH‰\$H‹(H‰l$è����1ÛH‰œ$Ø���H‰œ$à���è����HÄ¸���ÃLCL‰$H‰l$è����é]ÿÿÿ‰é@ÿÿÿLC L‰$H‰l$è����éçþÿÿ‰éÊþÿÿékýÿÿH‰ $è����H‹l$@¶]�€û�t HÇÀÿÿÿÿé,þÿÿHÇÀ���é þÿÿH����H‰\$pHÇD$x7���1ÛH‰\$`H‰\$hH����H‰$è����H‹D$H‰D$PH‰$è����H‹\$PH‹l$xH‰kH‹l$p€=�����…†���H‰+H‹\$PH‰\$PH‹����1íH9èt<H‹L$PH‰„$���H‰Œ$˜���H‰D$`H‰„$Ø���H‰L$hH‰Œ$à���è����HÄ¸���ÃH����H‰$H����H‰\$H����H‰\$è����H‹D$ë•H‰$H‰l$è����éjÿÿÿè����éÛúÿÿX������f
��*runtime.racefuncenter���¬
�� runtime.raceread���ô
�� runtime.raceread���¾
�� runtime.raceread���ú��"type.math/big.Int���Œ
��"runtime.newobject���Ì
�� runtime.raceread���ö
��,math/big.(*Int).BitLen���¸��type.[]uint8���Þ
��"runtime.makeslice���¶
��io.ReadFull��� 
��(runtime.racefuncexit���š
��0math/big.(*Int).SetBytes���Ê
�� runtime.raceread���´ 
�� runtime.raceread���ò 
��&math/big.(*Int).Cmp���¼

��"runtime.racewrite���ö
�6runtime.writeBarrierEnabled���š ��"type.math/big.Int���¬ 
��"runtime.newobject���ì 
��"runtime.racewrite���¦ �6runtime.writeBarrierEnabled���è 
�� runtime.raceread���” 
�� runtime.raceread���¶ 
�� runtime.raceread���–
��&math/big.(*Int).Exp���Ä
��(runtime.racefuncexit���ø
��.runtime.writebarrierptr���´
��.runtime.writebarrierptr���è
�� runtime.raceread���Â��†go.string."crypto/dsa: parameters not set up before generating key"���„��.type.errors.errorString���–
��"runtime.newobject���¼
��"runtime.racewrite���î�6runtime.writeBarrierEnabled���¤��Bgo.itab.*errors.errorString.error���š
��(runtime.racefuncexit���¸��0type.*errors.errorString���Î��type.error���æ��Bgo.itab.*errors.errorString.error���ú
�� runtime.typ2Itab���¤
��.runtime.writebarrierptr���¸
��0runtime.morestack_noctxt���Pð��""".autotmp_0049�Otype.error�"".autotmp_0048�Ï0type.*errors.errorString�"".autotmp_0047��$type.*math/big.Int�"".autotmp_0046��type.int�"".autotmp_0045��type.int�"".autotmp_0044��type.error�"".autotmp_0041�¿$type.*math/big.Int�"".autotmp_0040��0type.*errors.errorString�math/big.x·2�ï$type.*math/big.Int� "".~r0�¯type.error�errors.text·2�type.string� "".err�otype.error�"".xBytes�/type.[]uint8�"".x�ß$type.*math/big.Int� "".~r2�0type.error�"".rand�type.io.Reader�"".priv��&type.*"".PrivateKey�6&ðµïðÑïðªïðW�°
�|°&,+q†W5{
>Xm
/®('J�R�2³µ5=5DX>W8Wo0
4�Tgclocals·d727ff80b497e29f9e4591d6a097653e�Tgclocals·65705051595f533dcf8f777f3ed688f4���FC:/workdir/go/src/crypto/dsa/dsa.goþ "".fermatInverse��À��¨eH‹ %(���H‹‰����H;a†°���HƒìPH‹\$PH‰$è����HÇ$���è����H‹D$1ۈ\$0H‰\$8H‰\$@H‰\$HH\$0H‰$H‹\$`H‰\$H‰D$è����H‹\$H‰\$(H����H‰$è����H‹\$H‰$H‹\$XH‰\$H‹\$(H‰\$H‹\$`H‰\$è����H‹\$ H‰\$hè����HƒÄPÃè����é,ÿÿÿ������P
��*runtime.racefuncenter���j
��math/big.NewInt���Ø
��&math/big.(*Int).Sub���ú��"type.math/big.Int���Œ
��"runtime.newobject���ä
��&math/big.(*Int).Exp���‚
��(runtime.racefuncexit���–
��0runtime.morestack_noctxt���0 ��"".autotmp_0058�?"type.math/big.Int�"".autotmp_0057��$type.*math/big.Int�"".autotmp_0056��$type.*math/big.Int�"".autotmp_0054��$type.*math/big.Int�"".pMinus2�O$type.*math/big.Int� "".~r2� $type.*math/big.Int�"".P�$type.*math/big.Int�"".k��$type.*math/big.Int� «Ÿ �à� ê,<F��'D, �Tgclocals·83552342276b4754f92c89cf82c9adbd�Tgclocals·1d5f743f0eb249539f073a12a164a100���FC:/workdir/go/src/crypto/dsa/dsa.goþ"".Sign��à��ÔeH‹ %(���H‹‰����HD$ÈH;A†Á��Hì¸���H‹œ$¸���H‰$è����1Û1ÛH‰œ$���H‰œ$��HDŽ$ø�������HDŽ$ð�������H‹œ$Ð���H‰$Hƒ$è����H‹œ$Ð���H‹kH‰,$è����H‹D$H‰ÃHƒãHƒû�t;H����H‰$è����H‹����H‰œ$���H‹����H‰œ$��è����HÄ¸���ÃH‰ÃHÁûH‰\$@1ۈœ$˜���H‰œ$ ���H‰œ$¨���H‰œ$°���Hœ$˜���H‰\$pH����H‰$H‹\$@H‰\$H‹\$@H‰\$è����H‹T$H‹L$ H‹D$(H‰”$€���H‰Œ$ˆ���H‰„$���H‹œ$À���H‰$H‹œ$È���H‰\$H‹œ$€���H‰\$H‹œ$ˆ���H‰\$H‹œ$���H‰\$ è����H‹L$0H‹D$8H‰„$��H‰Œ$���Hƒù�t è����HÄ¸���ÃH‹\$pH‰$H‹œ$€���H‰\$H‹œ$ˆ���H‰\$H‹œ$���H‰\$è����H‹D$pH‰D$XH‰$Hƒ$è����H‹L$XH‹iHƒý�…��1ÀHƒø�Žn��H‹œ$Ð���H‰$Hƒ$è����H‹\$pH‰$H‹œ$Ð���H‹kH‰l$è����H‹\$Hƒû�*��H‹œ$Ð���H‰$Hƒ$è����H‹\$pH‰$H‹œ$Ð���H‹kH‰l$è����H‹\$H‰\$hH����H‰$è����H‹\$H‰\$xH‹œ$Ð���H‰$Hƒ$è����H‹œ$Ð���H‰$è����H‹„$Ð���H‹\$xH‰$H‹hH‰l$H‹\$pH‰\$H‹(H‰l$è����H‹\$ H‰œ$ð���H‹œ$Ð���H‰$Hƒ$è����H‹„$ð���H‰$H‰D$H‹œ$Ð���H‹kH‰l$è����H‹„$ð���H‰D$PH‰$Hƒ$è����H‹L$PH‹iHƒý�…Ò��1ÀHƒø�„0ýÿÿH‹\$pH‰$H‹œ$Ø���H‰\$H‹œ$à���H‰\$H‹œ$è���H‰\$è����H‹\$ H‰\$HH����H‰$è����H‹\$H‰\$xH‹œ$Ð���H‰$Hƒ$ è����H‹\$xH‰$H‹œ$Ð���H‹k H‰l$H‹œ$ð���H‰\$è����H‹D$H‰$H‰„$ø���H‰D$H‹\$HH‰\$è����H‹œ$Ð���H‰$Hƒ$è����H‹„$ø���H‰$H‰D$H‹œ$Ð���H‹kH‰l$è����H‹„$ø���H‰$H‰D$H‹\$hH‰\$è����H‹œ$Ð���H‰$Hƒ$è����H‹„$ø���H‰$H‰D$H‹œ$Ð���H‹kH‰l$è����H‹„$ø���H‰D$`H‰$Hƒ$è����H‹L$`H‹iHƒý�u1ÀHƒø�„ ûÿÿè����HÄ¸���ÃH‰ $è����H‹l$`¶]�€û�t HÇÀÿÿÿÿëÉHÇÀ���ëÀH‰ $è����H‹l$P¶]�€û�t HÇÀÿÿÿÿé þÿÿHÇÀ���éþÿÿé¯ûÿÿH‰ $è����H‹l$X¶]�€û�t HÇÀÿÿÿÿé`üÿÿHÇÀ���éTüÿÿè����éúÿÿX������f
��*runtime.racefuncenter���ê
�� runtime.raceread���”
��,math/big.(*Int).BitLen���Æ��,"".ErrInvalidPublicKey���Ø
�� runtime.raceread���æ��,"".ErrInvalidPublicKey���„�,"".ErrInvalidPublicKey���ž
��(runtime.racefuncexit���°��type.[]uint8���ê
��"runtime.makeslice���Â
��io.ReadFull���Œ
��(runtime.racefuncexit���†
��0math/big.(*Int).SetBytes���¶
�� runtime.raceread���  
�� runtime.raceread���Þ 
��&math/big.(*Int).Cmp���¨

�� runtime.raceread���æ

�� "".fermatInverse���ˆ ��"type.math/big.Int���š 
��"runtime.newobject���Ú 
�� runtime.raceread���ü 
�� runtime.raceread���Þ 
��&math/big.(*Int).Exp���¤ 
�� runtime.raceread���ò 
��&math/big.(*Int).Mod���¨
�� runtime.raceread���Ð
��0math/big.(*Int).SetBytes���ò��"type.math/big.Int���„
��"runtime.newobject���Ä
�� runtime.raceread���œ
��&math/big.(*Int).Mul���æ
��&math/big.(*Int).Add���’
�� runtime.raceread���à
��&math/big.(*Int).Mod��� 
��&math/big.(*Int).Mul���Ì
�� runtime.raceread���š
��&math/big.(*Int).Mod���Ð
�� runtime.raceread���
��(runtime.racefuncexit���²
�� runtime.raceread���„
�� runtime.raceread���ì
�� runtime.raceread���Â
��0runtime.morestack_noctxt��� ð��2"".autotmp_0074�?"type.math/big.Int�"".autotmp_0073��type.int�"".autotmp_0072��$type.*math/big.Int�"".autotmp_0071��$type.*math/big.Int�"".autotmp_0070��$type.*math/big.Int�"".autotmp_0067��$type.*math/big.Int�"".autotmp_0066��$type.*math/big.Int�"".autotmp_0065��type.int�"".autotmp_0064��type.int�"".autotmp_0061�$type.*math/big.Int�"".autotmp_0060��type.int�math/big.x·2�¯$type.*math/big.Int�math/big.x·2�Ï$type.*math/big.Int�math/big.x·2�¿$type.*math/big.Int�"".z�ß$type.*math/big.Int�"".kInv�Ÿ$type.*math/big.Int� "".buf�otype.[]uint8�"".k�$type.*math/big.Int�"".n�ïtype.int� "".err�€type.error�"".s�p$type.*math/big.Int�"".r�`$type.*math/big.Int�"".hash�0type.[]uint8�"".priv� &type.*"".PrivateKey�"".rand��type.io.Reader�8&ð´ïðöïðïðœ�ð �Œ†&\[,0 .RO .KW>;5{
?=:?a E=6
)/
/%�n�2BZfl%=5D9 B#BT ,%]X ) 4 ;�Tgclocals·980c6cc40c11d32dbd50f6c78702303d�Tgclocals·176bf038b05947ee9e36467c7243f1d3���FC:/workdir/go/src/crypto/dsa/dsa.goþ"".Verify��€��€eH‹ %(���H‹‰����HD$ÀH;A†��HìÀ���H‹œ$À���H‰$è����H‹„$è���H‰D$(H‰$Hƒ$è����H‹L$(H‹iHƒý�…¢��1ÀHƒøŒ��H‹œ$È���H‰$Hƒ$è����H‹œ$è���H‰$H‹œ$È���H‹kH‰l$è����H‹\$Hƒû�:��H‹„$ð���H‰D$0H‰$Hƒ$è����H‹L$0H‹iHƒý�…Ý��1ÀHƒøŒ¼��H‹œ$È���H‰$Hƒ$è����H‹œ$ð���H‰$H‹œ$È���H‹kH‰l$è����H‹\$Hƒû�u��1ۈœ$ ���H‰œ$¨���H‰œ$°���H‰œ$¸���Hœ$ ���H‰\$XH‹œ$È���H‰$Hƒ$è����H‹\$XH‰$H‹œ$ð���H‰\$H‹œ$È���H‹kH‰l$è����H‹\$H‰\$8H‹œ$È���H‰$Hƒ$è����H‹œ$È���H‹kH‰,$è����H‹\$HƒãHƒû�tƄ$ø����è����HÄÀ���Ã1ۈœ$€���H‰œ$ˆ���H‰œ$���H‰œ$˜���Hœ$€���H‰$H‹œ$Ð���H‰\$H‹œ$Ø���H‰\$H‹œ$à���H‰\$è����H‹D$ 1ۈ\$`H‰\$hH‰\$pH‰\$xH\$`H‰$H‰D$H‹\$8H‰\$è����H‹\$H‰\$PH‹œ$È���H‰$Hƒ$è����H‹D$PH‰$H‰D$H‹œ$È���H‹kH‰l$è����H‹D$8H‰$H‹œ$è���H‰\$H‰D$è����H‹\$H‰\$HH‹œ$È���H‰$Hƒ$è����H‹D$HH‰$H‰D$H‹œ$È���H‹kH‰l$è����H‹œ$È���H‰$Hƒ$è����H‹œ$È���H‰$è����H‹Œ$È���H‹D$PH‰$H‹iH‰l$H‰D$H‹)H‰l$è����H‹\$ H‰\$@H‹œ$È���H‰$Hƒ$è����H‹œ$È���H‰$è����H‹Œ$È���H‹D$HH‰$H‹iH‰l$H‰D$H‹)H‰l$è����H‹D$@H‰$H‰D$H‹\$HH‰\$è����H‹œ$È���H‰$è����H‹D$@H‰$H‰D$H‹œ$È���H‹+H‰l$è����H‹œ$È���H‰$Hƒ$è����H‹D$@H‰$H‰D$H‹œ$È���H‹kH‰l$è����H‹\$@H‰$H‹œ$è���H‰\$è����H‹\$Hƒû�”„$ø���è����HÄÀ���ÃƄ$ø����è����HÄÀ���ÃH‰ $è����H‹l$0¶]�€û�t HÇÀÿÿÿÿéüÿÿHÇÀ���éöûÿÿƄ$ø����è����HÄÀ���ÃH‰ $è����H‹l$(¶]�€û�t HÇÀÿÿÿÿé=ûÿÿHÇÀ���é1ûÿÿè����éÀúÿÿL������f
��*runtime.racefuncenter���œ
�� runtime.raceread���†
�� runtime.raceread���Ê
��&math/big.(*Int).Cmp���ž
�� runtime.raceread���ˆ
�� runtime.raceread���Ì
��&math/big.(*Int).Cmp���ò
�� runtime.raceread���Ê
��4math/big.(*Int).ModInverse���Š
�� runtime.raceread���´
��,math/big.(*Int).BitLen���ì
��(runtime.racefuncexit���® 
��0math/big.(*Int).SetBytes���œ

��&math/big.(*Int).Mul���Ü

�� runtime.raceread���¤ 
��&math/big.(*Int).Mod���ä 
��&math/big.(*Int).Mul���¤ 
�� runtime.raceread���ì 
��&math/big.(*Int).Mod���˜ 
�� runtime.raceread���º 
�� runtime.raceread���’
��&math/big.(*Int).Exp���Ò
�� runtime.raceread���ô
�� runtime.raceread���Ì
��&math/big.(*Int).Exp���†
��&math/big.(*Int).Mul���¨
�� runtime.raceread���î
��&math/big.(*Int).Mod���š
�� runtime.raceread���â
��&math/big.(*Int).Mod���˜
��&math/big.(*Int).Cmp���Ä
��(runtime.racefuncexit���î
��(runtime.racefuncexit���
�� runtime.raceread���ö
��(runtime.racefuncexit���˜
�� runtime.raceread���î
��0runtime.morestack_noctxt���p€��4"".autotmp_0091�¿"type.math/big.Int�"".autotmp_0090�"type.math/big.Int�"".autotmp_0089�?"type.math/big.Int�"".autotmp_0088��type.int�"".autotmp_0087��$type.*math/big.Int�"".autotmp_0086��$type.*math/big.Int�"".autotmp_0085��$type.*math/big.Int�"".autotmp_0084��$type.*math/big.Int�"".autotmp_0083��$type.*math/big.Int�"".autotmp_0082��$type.*math/big.Int�"".autotmp_0081��type.int�"".autotmp_0079�Ï$type.*math/big.Int�"".autotmp_0078��type.int�"".autotmp_0077��type.int�"".autotmp_0076��type.int�math/big.x·2�Ÿ$type.*math/big.Int�math/big.x·2�¯$type.*math/big.Int�"".v�ÿ$type.*math/big.Int�
"".u2�ï$type.*math/big.Int�
"".u1�ß$type.*math/big.Int�"".w�$type.*math/big.Int� "".~r4�`type.bool�"".s�P$type.*math/big.Int�"".r�@$type.*math/big.Int�"".hash�type.[]uint8� "".pub��$type.*"".PublicKey�@&€Ûÿ€«ÿ€ÿ€Cÿ€9�À
�„ô7z0
^<?%:]X4:,78) //
�`�25L5u, 1a7 D w Z‰+35�Tgclocals·5d89a3c86737441ee6383a190df3af60�Tgclocals·768fd9a8d77232d278134c3e54ca85d8���FC:/workdir/go/src/crypto/dsa/dsa.goþ"".init��€��ìeH‹ %(���H‹‰����H;a†��Hƒì0H‹\$0H‰$è����H����H‰$è����¶����€û�t-H����H‰$è����¶����€ûu
è����HƒÄ0Ãè���� H����H‰$è����Æ����è����è����H����H‰$HÇD$���è����H‹\$H‰\$ H‹\$H‰\$(H����H‰$è����H‹\$ H‰����H‹\$(€=�����u(H‰����H����H‰$è����Æ����è����HƒÄ0ÃH-����H‰,$H‰\$è����ëÈè����éÊþÿÿ:������P
��*runtime.racefuncenter���^��"".initdone·���p
�� runtime.raceread���~��"".initdone·���–��"".initdone·���¨
�� runtime.raceread���¶��"".initdone·���Ê
��(runtime.racefuncexit���Þ
��"runtime.throwinit���ð��"".initdone·���‚
��"runtime.racewrite���Ž�"".initdone·���š
��io.init���¤
��math/big.init���²��Tgo.string."crypto/dsa: invalid public key"���Ö
��errors.New���Œ��,"".ErrInvalidPublicKey���ž
��"runtime.racewrite���¶��,"".ErrInvalidPublicKey���Ì�6runtime.writeBarrierEnabled���à�,"".ErrInvalidPublicKey���î��"".initdone·���€
��"runtime.racewrite���Œ�"".initdone·���˜
��(runtime.racefuncexit���°�,"".ErrInvalidPublicKey���Ì
��.runtime.writebarrierptr���Ú
��0runtime.morestack_noctxt����`��"".autotmp_0092�type.error�`O_`¦_`+�À�"®–ã^ä!ãä��'§1A�Tgclocals·69c1753bd5f81501d95132d08af04464�Tgclocals·21a8f585a14d020f181242c5256583dc���FC:/workdir/go/src/crypto/dsa/dsa.goþ0Bgo.itab.*errors.errorString.error�����þdgo.string.hdr."crypto/dsa: invalid ParameterSizes"� �� ��������"����������\go.string."crypto/dsa: invalid ParameterSizes"���þ\go.string."crypto/dsa: invalid ParameterSizes"�P��Fcrypto/dsa: invalid ParameterSizes��þTgclocals·2922043522cb5ba2958c6963b259877d�À��À���(������������@�������@�����@�����@�"�������"�������"���@�"������"����� "���>��""���<� ""���|� ""��� � ""����� ""����������€������€����������������þTgclocals·b55a096c2daa7266c7e1e76154dffc99�¨��¨���������������������7������7���7���7���7���7���7���7���7������������7����þŽgo.string.hdr."crypto/dsa: parameters not set up before generating key"� �� ��������7����������†go.string."crypto/dsa: parameters not set up before generating key"���þ†go.string."crypto/dsa: parameters not set up before generating key"�p��pcrypto/dsa: parameters not set up before generating key��þTgclocals·65705051595f533dcf8f777f3ed688f4�X��X ���������������������
���@���D�������þTgclocals·d727ff80b497e29f9e4591d6a097653e�X��X ����������������������������������þTgclocals·1d5f743f0eb249539f073a12a164a100�0��0��������������������þTgclocals·83552342276b4754f92c89cf82c9adbd�0��0�������������������þTgclocals·176bf038b05947ee9e36467c7243f1d3� �� ������������������ �� ����� ��¤�� ��0��p��0��2������Q�������þTgclocals·980c6cc40c11d32dbd50f6c78702303d� �� ���
������Ï���Ï��Ï���Ï���Ï��Ï��Ï��������Ï��Ï��O��O��O��Ï��Ï���þTgclocals·768fd9a8d77232d278134c3e54ca85d8�ˆ��ˆ����������������@���������$� �0�������þTgclocals·5d89a3c86737441ee6383a190df3af60�ˆ��ˆ������3���3���3���3���3���3���3���3���3���3���3���3���3���3���3����þ\go.string.hdr."crypto/dsa: invalid public key"� �� ������������������Tgo.string."crypto/dsa: invalid public key"���þTgo.string."crypto/dsa: invalid public key"�@��>crypto/dsa: invalid public key��þTgclocals·21a8f585a14d020f181242c5256583dc� �� ��������������þTgclocals·69c1753bd5f81501d95132d08af04464�����������þ.,"".ErrInvalidPublicKey�� type.error���þ0"".initdone·��type.uint8���þ0"".GenerateParameters·f��������������*"".GenerateParameters���þ""".GenerateKey·f��������������"".GenerateKey���þ&"".fermatInverse·f�������������� "".fermatInverse���þ"".Sign·f��������������"".Sign���þ"".Verify·f��������������"".Verify���þ"".init·f��������������"".init���þ"runtime.gcbits.01����þ.go.string.hdr."[]uint8"� �� ������������������&go.string."[]uint8"���þ&go.string."[]uint8"���[]uint8��þtype.[]uint8� �� ��������������ß~.8��������������������������������������������������������� 0 � runtime.algarray���@��"runtime.gcbits.01���P��.go.string.hdr."[]uint8"���p��*go.weak.type.*[]uint8���€��"runtime.zerovalue�����type.uint8���þ6go.typelink.[]uint8 []uint8��������������type.[]uint8���þ type..hashfunc24� �� ������������������,runtime.memhash_varlen���þtype..eqfunc24� �� ������������������.runtime.memequal_varlen���þtype..alg24� �� ������������������� type..hashfunc24�����type..eqfunc24���þ"runtime.gcbits.07����þ<go.string.hdr."dsa.Parameters"� �� ������������������4go.string."dsa.Parameters"���þ4go.string."dsa.Parameters"� ��dsa.Parameters��þ"go.string.hdr."P"� �� ������������������go.string."P"���þgo.string."P"���P��þ"go.string.hdr."Q"� �� ������������������go.string."Q"���þgo.string."Q"���Q��þ"go.string.hdr."G"� �� ������������������go.string."G"���þgo.string."G"���G��þ4go.string.hdr."Parameters"� �� ��������
����������,go.string."Parameters"���þ,go.string."Parameters"� ��Parameters��þ4go.string.hdr."crypto/dsa"� �� ��������
����������,go.string."crypto/dsa"���þ,go.string."crypto/dsa"� ��crypto/dsa��þ"go.importpath."".� �� ��������
����������,go.string."crypto/dsa"���þ$type."".Parameters��€��€��������������yàŒ€������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� 0��type..alg24���@��"runtime.gcbits.07���P��<go.string.hdr."dsa.Parameters"���p��&type.*"".Parameters���€��"runtime.zerovalue���À�$type."".Parameters���À��"go.string.hdr."P"���à��$type.*math/big.Int�����"go.string.hdr."Q"���°��$type.*math/big.Int���à��"go.string.hdr."G"���€��$type.*math/big.Int���`°�$type."".Parameters���°��4go.string.hdr."Parameters"���À��"go.importpath."".���Ѐ�$type."".Parameters���þ>go.string.hdr."*dsa.Parameters"� �� ������������������6go.string."*dsa.Parameters"���þ6go.string."*dsa.Parameters"� �� *dsa.Parameters��þ&type.*"".Parameters�� �� ��������������ÈE·o�6�������������������������������������������������������� 0 � runtime.algarray���@��"runtime.gcbits.01���P��>go.string.hdr."*dsa.Parameters"���p��8go.weak.type.**"".Parameters���€��"runtime.zerovalue�����$type."".Parameters���þFgo.string.hdr."*dsa.ParameterSizes"� �� ������������������>go.string."*dsa.ParameterSizes"���þ>go.string."*dsa.ParameterSizes"�0��(*dsa.ParameterSizes��þ.type.*"".ParameterSizes�� �� ��������������‰Åï3�6�������������������������������������������������������� 0 � runtime.algarray���@��"runtime.gcbits.01���P��Fgo.string.hdr."*dsa.ParameterSizes"���p��@go.weak.type.**"".ParameterSizes���€��"runtime.zerovalue�����,type."".ParameterSizes���þruntime.gcbits.������þDgo.string.hdr."dsa.ParameterSizes"� �� ������������������<go.string."dsa.ParameterSizes"���þ<go.string."dsa.ParameterSizes"�0��&dsa.ParameterSizes��þ<go.string.hdr."ParameterSizes"� �� ������������������4go.string."ParameterSizes"���þ4go.string."ParameterSizes"� ��ParameterSizes��þ,type."".ParameterSizes��à��à���������������u.M�‚����������������������������������������������������������������������������������������0 � runtime.algarray���@��runtime.gcbits.���P��Dgo.string.hdr."dsa.ParameterSizes"���p��.type.*"".ParameterSizes���€��"runtime.zerovalue���`�,type."".ParameterSizes�����<go.string.hdr."ParameterSizes"��� ��"go.importpath."".���°à�,type."".ParameterSizes���þ type..hashfunc32� �� �������� ����������,runtime.memhash_varlen���þtype..eqfunc32� �� �������� ����������.runtime.memequal_varlen���þtype..alg32� �� ������������������� type..hashfunc32�����type..eqfunc32���þ<go.string.hdr."*dsa.PublicKey"� �� ������������������4go.string."*dsa.PublicKey"���þ4go.string."*dsa.PublicKey"� ��*dsa.PublicKey��þ$type.*"".PublicKey�� �� ��������������³Ð/j�6�������������������������������������������������������� 0 � runtime.algarray���@��"runtime.gcbits.01���P��<go.string.hdr."*dsa.PublicKey"���p��6go.weak.type.**"".PublicKey���€��"runtime.zerovalue�����"type."".PublicKey���þ"runtime.gcbits.0f����þ:go.string.hdr."dsa.PublicKey"� �� �������� ����������2go.string."dsa.PublicKey"���þ2go.string."dsa.PublicKey"� ��dsa.PublicKey��þ"go.string.hdr."Y"� �� ������������������go.string."Y"���þgo.string."Y"���Y��þ2go.string.hdr."PublicKey"� �� �������� ����������*go.string."PublicKey"���þ*go.string."PublicKey"� ��PublicKey��þ"type."".PublicKey��°��° ������� �������Ù(����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������0��type..alg32���@��"runtime.gcbits.0f���P��:go.string.hdr."dsa.PublicKey"���p��$type.*"".PublicKey���€��"runtime.zerovalue���À�"type."".PublicKey���à��$type."".Parameters�����"go.string.hdr."Y"���°��$type.*math/big.Int���`à�"type."".PublicKey���à��2go.string.hdr."PublicKey"���ð��"go.importpath."".���€°�"type."".PublicKey���þ type..hashfunc40� �� ��������(����������,runtime.memhash_varlen���þtype..eqfunc40� �� ��������(����������.runtime.memequal_varlen���þtype..alg40� �� ������������������� type..hashfunc40�����type..eqfunc40���þ"runtime.gcbits.1f����þ<go.string.hdr."dsa.PrivateKey"� �� ������������������4go.string."dsa.PrivateKey"���þ4go.string."dsa.PrivateKey"� ��dsa.PrivateKey��þ"go.string.hdr."X"� �� ������������������go.string."X"���þgo.string."X"���X��þ4go.string.hdr."PrivateKey"� �� ��������
����������,go.string."PrivateKey"���þ,go.string."PrivateKey"� ��PrivateKey��þ$type."".PrivateKey��°��°(�������(�������U–«²����������������������������������������������������������������������������������������������������������������������������������������������� �����������������������������������������������0��type..alg40���@��"runtime.gcbits.1f���P��<go.string.hdr."dsa.PrivateKey"���p��&type.*"".PrivateKey���€��"runtime.zerovalue���À�$type."".PrivateKey���à��"type."".PublicKey�����"go.string.hdr."X"���°��$type.*math/big.Int���`à�$type."".PrivateKey���à��4go.string.hdr."PrivateKey"���ð��"go.importpath."".���€°�$type."".PrivateKey���þ>go.string.hdr."*dsa.PrivateKey"� �� ������������������6go.string."*dsa.PrivateKey"���þ6go.string."*dsa.PrivateKey"� �� *dsa.PrivateKey��þ&type.*"".PrivateKey�� �� ��������������Š¦ƒÌ�6�������������������������������������������������������� 0 � runtime.algarray���@��"runtime.gcbits.01���P��>go.string.hdr."*dsa.PrivateKey"���p��8go.weak.type.**"".PrivateKey���€��"runtime.zerovalue�����$type."".PrivateKey���þ.go.string.hdr."runtime"� �� ������������������&go.string."runtime"���þ&go.string."runtime"���runtime��þ,go.importpath.runtime.� �� ������������������&go.string."runtime"���þ,go.string.hdr."errors"� �� ������������������$go.string."errors"���þ$go.string."errors"���errors��þ*go.importpath.errors.� �� ������������������$go.string."errors"���þ$go.string.hdr."io"� �� ������������������go.string."io"���þgo.string."io"���io��þ"go.importpath.io.� �� ������������������go.string."io"���þ0go.string.hdr."math/big"� �� ������������������(go.string."math/big"���þ(go.string."math/big"� ��math/big��þ.go.importpath.math/big.� �� ������������������(go.string."math/big"���þ"runtime.zerovalue������ÿÿgo13ld�