this is hardstring problems' source code!