weighted codes