diff --git a/bencode/misc.go b/bencode/misc.go
index <HASH>..<HASH> 100644
--- a/bencode/misc.go
+++ b/bencode/misc.go
@@ -6,16 +6,10 @@ import (
 )
 
 // Wow Go is retarded.
-var marshalerType = reflect.TypeOf(func() *Marshaler {
-	var m Marshaler
-	return &m
-}()).Elem()
-
-// Wow Go is retarded.
-var unmarshalerType = reflect.TypeOf(func() *Unmarshaler {
-	var i Unmarshaler
-	return &i
-}()).Elem()
+var (
+	marshalerType   = reflect.TypeOf((*Marshaler)(nil)).Elem()
+	unmarshalerType = reflect.TypeOf((*Unmarshaler)(nil)).Elem()
+)
 
 func bytesAsString(b []byte) string {
 	return *(*string)(unsafe.Pointer(&b))
bencode: simplify getting `marshalerType` and `unmarshalerType` (#<I>)