Looping in pymc3/theano

Doing something like this:

popsize=600
sample_size=100
with pm.Model() as model:
    
    p0 = pm.Beta("p0",1,1,shape=1)
    
    def evolve(prev_p):
        return pm.Binomial.dist(popsize,prev_p).random()/popsize
    
    result,updates = theano.scan(evolve,
                                 sequences=[p0],
                                 n_steps=2)
    
    p2 = result[-1]
    
    r0 = pm.Binomial("r0",sample_size,p0,observed=[10,14,12])
    rT = pm.Binomial("rT",sample_size,p2,observed=[7,16,13])

results in ValueError: Cannot resolve inputs for ['p0[t]'].
Variations of this also result in errors…