<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def powernode_data(self, name:str) -> Powernode: """Return a Powernode object describing the given powernode"""

        self.assert_powernode(name)
        contained_nodes = frozenset(self.nodes_in(name))
        return Powernode(
            size=len(contained_nodes),
            contained=frozenset(self.all_in(name)),
            contained_pnodes=frozenset(self.powernodes_in(name)),
            contained_nodes=contained_nodes,
        )