modify workable code