In order to reduce the state due to multicast forwarding in packet switched networks a number of proposals have been studied in the literature. One recently studied approach is MPSS (Multi-Protocol Stateless Switching), in which the path (unicast) or the tree (multicast) is encoded as a Bloom filter carried by a packet header. This sort of source-routed forwarding method makes it possible to eliminate the forwarding state in network nodes. Our proposal looks into improving MPSS and at the same time solving the forwarding anomalies observed in multicast Bloom filter-based approaches. We propose to encode the multicast tree into a stack of variable-length Bloom filters representing the set of output interfaces at a given tree depth, instead of a single filter for the whole tree. We prove that our approach is more efficient than MPSS on multicast, especially in large networks, and that it reduces and binds the scope of forwarding anomalies derived from false positives: packet storms, forwarding loops and flow duplication. Furthermore, packet processing is simpler and the average header overhead is reduced.