support explicit constructors
0.6.0