great job implementing this! i not sure why need to have the idle frame, seems a little redundant. anyway good job!