class ImagineSuccessHandler extends MessageHandler {
	private static final String CONTENT_REGEX = "\\*\\*(.*?)\\*\\* - <@\\d+> \\((.*?)\\)";

	@Override
	public int order() {
		return 101;
	}

	@Override
	public void handle(DiscordInstance instance, MessageType messageType, DataObject message) {<FILL_FUNCTION_BODY>}

}

		String content = getMessageContent(message);
		ContentParseData parseData = ConvertUtils.parseContent(content, CONTENT_REGEX);
		if (MessageType.CREATE.equals(messageType) && parseData != null && hasImage(message)) {
			TaskCondition condition = new TaskCondition()
					.setActionSet(Set.of(TaskAction.IMAGINE))
					.setFinalPromptEn(parseData.getPrompt());
			findAndFinishImageTask(instance, condition, parseData.getPrompt(), message);
		}
	
<methods>public non-sealed void <init>() ,public abstract void handle(com.github.novicezk.midjourney.loadbalancer.DiscordInstance, com.github.novicezk.midjourney.enums.MessageType, net.dv8tion.jda.api.utils.data.DataObject) ,public int order() <variables>protected com.github.novicezk.midjourney.support.DiscordHelper discordHelper,protected com.github.novicezk.midjourney.loadbalancer.DiscordLoadBalancer discordLoadBalancer