input: from typing import List
  
  def create_blockchain():
      """ Build a simple blockchain system in Python. The blockchain is composed of Block objects,
      each containing an index, timestamp, data, and the hash of the previous block. The function
      initializes the blockchain with a genesis block and then adds subsequent blocks based on 
      provided transactions.
      
      Example:
      >>> blockchain_transactions = ["transaction1", "transaction2"]
      >>> blockchain = create_blockchain()
      >>> print_blockchain()
      Block 0 : Timestamp - [current timestamp], Data - Genesis Block, Hash - [genesis block hash]
      Block 1 : Timestamp - [current timestamp], Data - transaction1, Hash - [block 1 hash]
      Block 2 : Timestamp - [current timestamp], Data - transaction2, Hash - [block 2 hash]
      """
  
  def print_blockchain():
      for block in blockchain:
          block_index = str(block.index)
          block_timestamp = str(block.timestamp)
          block_data = str(block.data)
          block_hash = block.hash
output:     class Block:
          def __init__(self, index, timestamp, data, previous_hash):
              self.index = index
              self.timestamp = timestamp
              self.data = data
              self.previous_hash = previous_hash
              self.hash = self.calculate_hash()
  
          def calculate_hash(self):
              block_string = f"{self.index}{self.timestamp}{self.data}{self.previous_hash}"
              return hashlib.sha256(block_string.encode()).hexdigest()
  
      import hashlib
      import time
  
      blockchain = []
  
      def create_genesis_block():
          return Block(0, time.time(), "Genesis Block", "0")
  
      blockchain.append(create_genesis_block())
  
      def add_block(data):
          previous_block = blockchain[-1]
          new_block = Block(previous_block.index + 1, time.time(), data, previous_block.hash)
          blockchain.append(new_block)
  
      for transaction in blockchain_transactions:
          add_block(transaction)