some code draft using go