struct Loss
    target::TargetLoss
    regularization::Float32
end

gettotal(x::Loss) = gettotal(x.target) + x.regularization
gettarget(x::Loss) = x.target
getregularization(x::Loss) = x.regularization
getpolicy(x::Loss) = getpolicy(x.target)
getreward(x::Loss) = getreward(x.target)
getvalue(x::Loss) = getvalue(x.target)