private Set beginTry() {
		final Set beginTry = new HashSet();

		final Iterator blocks = cfg.catchBlocks().iterator();

		while (blocks.hasNext()) {
			final Block block = (Block) blocks.next();

			final Handler handler = (Handler) cfg.handlersMap().get(block);

			if (handler != null) {
				final HashSet p = new HashSet();

				final Iterator prots = handler.protectedBlocks().iterator();

				while (prots.hasNext()) {
					final Block prot = (Block) prots.next();
					p.addAll(cfg.preds(prot));
				}

				p.removeAll(handler.protectedBlocks());

				// Add the protected region blocks which have preds outside the
				// region to the beginTry set.
				final Iterator preds = p.iterator();

				while (preds.hasNext()) {
					final Block pred = (Block) preds.next();
					beginTry.addAll(cfg.succs(pred));
				}
			}
		}

		return beginTry;
	}