create class function and variable
design the logic prototype
implement function
add usage section