Convenience functions based on walk by coolaj86.