QAJNTFDYVK52352T36FKGL4XAOF4OEWNR2BNZ4JXIO4JROZSC7YQC
}
func createValue(value, obase int) []int {
// calculate maximal place value needed for representing value
var p int
for sum := 0; sum <= value; p++ {
sum += (obase - 1) * int(math.Pow(float64(obase), float64(p)))
}
// generate obase representation of value
out := make([]int, p)
for i := p - 1; value != 0; i-- {
for j := obase - 1; j >= 0; j-- {
cand := j * int(math.Pow(float64(obase), float64(i)))
if cand <= value {
value -= cand
out[len(out)-1-i] = j
break
}
}
}
return out