  Decidability of the problems of unboundedness and simultaneous unboundedness
(aka. the diagonal problem) for higher-order recursion schemes was established
by Clemente, Parys, Salvati, and Walukiewicz (2016). Then a procedure of
optimal complexity was presented by Parys (2017); this procedure used a
complicated type system, involving multiple flags and markers. We present here
a simpler and much more intuitive type system serving the same purpose. We
prove that this type system allows to solve the unboundedness problem for a
widely considered subclass of recursion schemes, called safe schemes. For
unsafe recursion schemes we only have soundness of the type system: if one can
establish a type derivation claiming that a recursion scheme is unbounded then
it is indeed unbounded. Completeness of the type system for unsafe recursion
schemes is left as an open question. Going further, we discuss an extension of
the type system that allows to handle the simultaneous unboundedness problem.
  We also design and implement an algorithm that fully automatically checks
unboundedness of a given recursion scheme, completing in a short time for a
wide variety of inputs.
