WWW::Mechanize のフォームにinput追加したいとき

javascriptでinput追加されるようなフォームがあって、WWW::Mechanizeではフィールド追加できないみたいで一瞬困った。内部的にはHTML::Formが使われてて、こっちもフィールド追加できないみたいだったけど、ソース読むとHTML::Form::Inputってのがpackage宣言されていて、フォームのフィールドはこいつのインスタンスだった。このHTML::Form::Inputってのにはadd_to_formってメソッドがあるので、下記のようにすればできる。

use WWW::Mechanize;
use HTML::Form;
my $mech = WWW::Mechanize->new;
$mech->get("http://example.com/");
$mech->form_name("form1");

# ここ
HTML::Form::Input->new(name => 'foo', value => 'hoge')->add_to_form($mech->current_form);

$mech->set_fields(bar => 'fuga', baz => 'piyo');
$mech->submit;