basic version
v1 works for basic cases
change stepping method
sol of q128