fw impl