make base function.
initial; v0.1;