func GobExample() error {
	buffer := bytes.Buffer{}
	p := pos{
		X:      10,
		Y:      15,
		Object: "wrench",
	}
	e := gob.NewEncoder(&buffer)
	if err := e.Encode(&p); err != nil {
		return err
	}
	fmt.Println("Gob Encoded valued length: ", len(buffer.Bytes()))
	p2 := pos{}
	d := gob.NewDecoder(&buffer)
	if err := d.Decode(&p2); err != nil {
		return err
	}
	fmt.Println("Gob Decode value: ", p2)
	return nil
}
GobExample demonstrates using
the gob package
package encoding
import (
	"bytes"
	"encoding/gob"
	"fmt"
)
type pos struct {
	X      int
	Y      int
	Object string
}