fix function walk